Python 2.7 mysql.connector不';t使用python命令插入,但手动执行查询
因此,在我对stackoverflow进行研究之后,我没有进一步了解我的代码(我无法发布确切的代码,因为这是我工作中遇到的问题)和问题:Python 2.7 mysql.connector不';t使用python命令插入,但手动执行查询,python-2.7,mysql-connector,Python 2.7,Mysql Connector,因此,在我对stackoverflow进行研究之后,我没有进一步了解我的代码(我无法发布确切的代码,因为这是我工作中遇到的问题)和问题: import mysql.connector . . . cnx = mysql.connector.connect(user, password, host, database) cursor = cnx.cursor() for-loop: if condition: cursor.execute("I
import mysql.connector
.
.
.
cnx = mysql.connector.connect(user, password, host, database)
cursor = cnx.cursor()
for-loop:
if condition:
cursor.execute("INSERT INTO table (the_columns) VALUES (%s)", (my_values))
cnx.commit()
我已经尝试过手动插入,但我的python代码无法进行插入
手册插页:
INSERT INTO table (column1,...,column7) VALUES (string1,....,string6, now())
我没有错误信息,我只能查看数据库,发现新的Valius不在那里。
还有其他人面临这个问题吗?有人能提出问题所在吗 可能是因为您不必将变量置于“(“”)”之间? 您是否尝试将值直接放入sql中,而不是包含它的变量? 你说的“手动”是什么意思 无论如何,在将此数组作为第二个参数传递之前,应将所有变量放入一个数组中:
query = (
"INSERT INTO employees (emp_no, first_name, last_name, hire_date) VALUES (%s, %s, %s, %s)"
)
data = (2, 'Jane', 'Doe', datetime.date(2012, 3, 23))
cursor.execute(insert_stmt, data)
编辑:我刚刚检查过,这是主要的例子,如果你用谷歌搜索你的问题。。。等等,你有没有找过这个?这是最好的等待学习方法,伙计:在寻求帮助之前自己搜索。尝试将格式变量转换为元组。如果这不起作用。尝试将查询单独创建为变量,然后打印出来,直接在sql控制台中运行。您可能会得到更多有意义的错误
cnx = mysql.connector.connect(user, password, host, database)
cursor = cnx.cursor()
for-loop:
if condition:
cursor.execute("INSERT INTO table (the_columns) VALUES (%s)", (my_values,))
cnx.commit()
或
是的,我试过了,而且是手动的。不,偏执狂不是问题所在,它以前是以完全相同的方式工作的。我试图删除它们,这引发了一个语法错误。好吧,尝试将变量放入一个数据数组中,如示例(编辑抱歉>>)我已经尝试过了,我在谷歌上搜索了一个小时,结果也不起作用。我为什么还要问stackoverflow?你能编辑并显示你尝试过的“手册”方式吗?(因为许多工程师在stackOverflow上浪费了他们的时间,他们对所有事情都有答案,这就是为什么)问题解决了,出现了一个问题,因为以前的开发人员有两个同名的实例,这根本不是msql错误。
cnx = mysql.connector.connect(user, password, host, database)
cursor = cnx.cursor()
for-loop:
if condition:
sql = "INSERT INTO table ({}) VALUES ({})".format(the_columns,my_values)
print(sql)
cursor.execute(sql)
cnx.commit()