假设我们有以下sql语句:
INSERT INTO myTable VALUES (1,"test")
在我的python代码中,第一个值是整数或NULL。如何使用python代码插入NULL
值?
代码段:
var1 = getFirstValue()
var2 = getSecondValue()
qry = "INSERT INTO myTable VALUES (%d,%s)" % (var1,var2)
每当var1为None时,它就会抛出错误,但我希望插入NULL。
答案 0 :(得分:1)
由于您使用标记Django标记了此问题,因此您必须意识到您不只是编写查询并将其保存在数据库中,Django会处理此问题。
请查看此处提供的教程:https://docs.djangoproject.com/en/1.6/intro/tutorial01/
由于您提到了Sybase,您必须从(https://github.com/sqlanywhere/sqlany-django)获取Django驱动程序并修改settings.py项目中的DATABASES条目。 (首先完成教程)
答案 1 :(得分:0)
您可以使用:
qry = "INSERT INTO myTable VALUES ({0}, {1})".format(var1, var2)
答案 2 :(得分:-1)
这是一个可能的选择:
var1 = getFirstValue()
var2 = getSecondValue()
var2 = "'{0}'".format(var2) if var2 is not None else 'NULL'
qry = "INSERT INTO myTable VALUES ({0},{1})".format(var1,var2)