我试图在MySQL表中插入一些值,前两个值是字符串,最后一个是布尔值。我的问题是,无论我做什么,我似乎无法使python / MySQL识别布尔值并插入它。据我所知,Python正确地将最后一个值设为布尔值,但MySQL没有看到它。每次在表中默认为0。下面是一些伪代码,这正是我正在尝试做的事情。
conn = MySQLdb.connect(...)
c = conn.cursor()
c.execute("INSERT INTO table (name, string, bool) VALUES (%s,%s,%s,(aName,aString,boolVal))
答案 0 :(得分:3)
对于Python 2.7和MySQLdb包,它以这种方式对我有用。对于varchar类型的列,使用%s
表示布尔值,数字仅使用%s
,%d
,%i
。
INSERT INTO table (string, bool) VALUES ('%s',%s) % ('string',True)
答案 1 :(得分:1)
请参阅MySQL docs。 “布尔”数据类型只是0或1.
您所看到的行为是预期的。
答案 2 :(得分:1)
如果值为True或False 在python中,您可以使用int()
Object