我想把所有数据保存在字典中(或者其他任何有用的东西),并将所有添加到变量中的变量插入mysql数据库。问题是,我不知道会有多少变量。在
看起来是这样的:
cur.execute("INSERT INTO db_name(keys) VALUES (dict[key])")
我的程序中有很多东西,有些是布尔变量(True,False),有些是整数,其他的是字符串。默认情况下,我可以这样添加它们:
^{pr2}$如您所见,对于字符串和整数“%s”,对于布尔值,它必须是%s而不带“”
原因是,若找不到变量,它在数据库中必须为NULL,但我不知道如何将字符串和整数变量添加为NULL,因为它使用“%s”将它们作为字符串插入。在
类似的东西:(不是python代码,只是syntaxis思想)
cur.execute("INSERT INTO db_name( data.keys() ) VALUES ( data.values() ) ")
感谢大家的帮助,使用格式函数解决问题:
这是因为您在引号中使用了
%s
占位符,并且还传递了一个字符串NULL
,而不是空值(python中的None
)更正版本为:
参见文档here
相关问题 更多 >
编程相关推荐