将python(语音识别文本)插入SQL Server数据库



我使用了一个带有python的语音识别应用程序,其中你所说的内容的文本保存在一个名为"的文件中;yourtext.txt";,并且我尝试将其连接到SQL Server数据库,在该数据库中结果将被添加到文本文件以及SQL Server表CCD_。

注意:我在第19行的SQL命令中有一个语法错误,但我不知道如何修复它…

import speech_recognition as sr
import pyaudio
import pyodbc
r = sr.Recognizer()
with sr.Microphone() as source :
print("Say Something, pwease :")
audio = r.listen(source)
try :
text = r.recognize_google(audio, language="fr-FR")
conn = pyodbc.connect('Driver={SQL Server};'
'Server=VEGASQLEXPRESS;'
'Database=voice2text;'
'Trusted_Connection=yes;')
cursor = conn.cursor()
sqlcommand = (" insert into yourtext values ('"text"')")
cursor.execute(sqlcommand)
conn.commit()
conn.close()
print(text,file = open("yourtext.txt","a"))
except :
print("Sorry, could not hear !")

要连接/连接变量中的字符串,必须使用+

sqlcommand = " insert into yourtext values ('" + text + "')"

但在执行时使用?并发送文本作为参数会更安全

execute("INSERT INTO yourtext VALUES (?)", (text,) )

BTW:execute()需要带参数的tuple——即使您只有一个参数。并且它需要(text,)中的逗号来创建tuple。圆括号()不会创建tuple。它们仅将voice2text.dbo.yourtext (id, 'text1')0与此行中的其他逗号分隔开。

相关内容

  • 没有找到相关文章