Python 2.7 mysql.connector不';t使用python命令插入,但手动执行查询

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

因此,在我对stackoverflow进行研究之后,我没有进一步了解我的代码(我无法发布确切的代码,因为这是我工作中遇到的问题)和问题:

 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()