Dies funktioniert nicht und zeigt den Fehler „Argument kann nicht verarbeitet werden: str (Quality Tyre Service in Ponteland), es muss vom Typ Liste, Tupel oder Wörterbuch sein“
animport mysql.connector from sentence_splitter import SentenceSplitter, split_text_into_sentences mydb = mysql.connector.connect( host="00.00.00.00", user="user", password="password", database="database" ) mycursor = mydb.cursor() sql = ("""SELECT blog_paragraph FROM blog_paragraph WHERE blog_topic like '%"%s"%'""") val = ("Providing Quality Tyre Services in Ponteland") mycursor.execute(sql,val) myresult = mycursor.fetchall() for x in myresult: print(x)
Wenn der Wert jedoch direkt in der Abfrage übergeben wird, scheint diese fehlerfrei zu laufen.
import mysql.connector from sentence_splitter import SentenceSplitter, split_text_into_sentences mydb = mysql.connector.connect( host="00.00.00.00", user="user", password="password", database="database" ) mycursor = mydb.cursor() sql = ("""SELECT blog_paragraph FROM blog_paragraph WHERE blog_topic like '%"Providing Quality Tyre Services in Ponteland"%'""") mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x)
Ich habe versucht, String-Parameter über eine Variable zu übergeben, aber es scheint nicht zu funktionieren.
Finden Sie die Antwort später heraus
mycursor = mydb.cursor() val = "Providing Quality Tyre Services in Ponteland" sql = ("SELECT blog_paragraph FROM blog_paragraph WHERE blog_topic like '%%%s%%' " % val) mycursor.execute(sql) myresult = mycursor.fetchall()
如错误所述:
您的参数必须是预期类型之一,但您正在发送
str
您在
val
变量上添加了括号:但是
元组
是由逗号,
而不是括号定义的,这应该有效: