Sqlite3 INSERT查询错误?

时间:2016-10-14 16:16:28

标签: python mysql python-3.x

我想插入我的DB 2字符串var

从用户输入的一个==> H和

从chatbot生成的一个==>乙

以下是代码:

# initialize the connection to the database
sqlite_file = '/Users/emansaad/Desktop/chatbot1/brain.sqlite'
connection = sqlite3.connect(sqlite_file)
connection.create_function("REGEXP", 2, regexp)
cursor = connection.cursor()
connection.text_factory = str
connection = open

def new_data(Input,Output):
     row = cursor.execute('SELECT * FROM chatting_log WHERE user=?',(Input,)).fetchone()
     if row:
        return
     else:
        cursor.execute('INSERT INTO chatting_log VALUES (?, ?)', (Input, Output))

while True:
   print(("B:%s" % B))  
   H = input('H:')
   New_H= ' '.join(PreProcess_text(H))
   reply= cursor.execute('SELECT respoce FROM Conversation_Engine WHERE request REGEXP?',[New_H]).fetchone()
   if reply:
      B=reply[0]
      new_data(H,B)

这些代码在生成和从数据库中选择重放方面非常有效,但问题是当我回到数据库中的chatting_log表时,没有数据?

PS:我正在使用python 3

谢谢,

1 个答案:

答案 0 :(得分:1)

始终记得提交您所做的更改。在这种情况下:connection.commit()。除非您看起来像是覆盖了connection变量。