我试图使用python将已经存在于一个mysql表中的数据插入到另一个mysql表中。每个表中的列名相同,testThis
是我对该项所区分的数据,我想用它来告诉mysql要查看哪些列。
testThis = '.\\reports&jkl$ff88dsReports'
它说我有语法错误,但我不确定在哪里,因为我非常确定第一次在字段名称周围应该有括号而不是第二次。谁知道我做错了什么?
答案 0 :(得分:0)
我不确定你要用obj = repr(objkey)
行做什么,但是python认为你用这行来定义变量,而不是设置sql语法(如果这确实是你的愿望)。
sql = "INSERT INTO newtable (%s, %s, %s, %s) SELECT %s, %s, %s, %s FROM oldtable
WHERE %s;" % ((name, desig, data, num), name, desig, data, num, obj = repr(objkey))
应该改为:
sql = "INSERT INTO newtable (%s, %s, %s, %s) SELECT %s, %s, %s, %s FROM oldtable
WHERE obj=%;" % ((name, desig, data, num), name, desig, data, num, repr(objkey))
但即使这样,你也需要将objkey
定义为某个python变量。
这个答案可能很遥远,但你需要定义你期望用obj = repr(objkey)
实现的目标,以获得更准确的答案。