null - UPDATE语句pyodbc在sql server中设置NULL值(而不是None)
问题描述
我有要更新数据库中某些条目的代码。一些属性可以有一个NULL
值。
让我们看看以下情况:
new_doc_name = doc_name (can be None or string value)
sql = UPDATE Documents SET DocName = new_doc_name WHERE DocID = doc_id
cursor.execute(sql);
cursor.commit()
当 new_doc_name 为None
时,数据库中的值设置为None
,但我希望将其设置为NULL
。
当为 做同样的事情时INSERT
,这些值被设置为NULL
而不是None
我想要的。但是,我不能用UPDATE
语句复制它。
解决方案
您需要使用参数化查询:
sql = "UPDATE Documents SET DocName = ? WHERE DocID = ?"
cursor.execute(sql, new_doc_name, doc_id);
推荐阅读
- javascript - 如何从 UI5 中的父上下文获取 OData 上下文
- jenkins - Jenkins 文件差异与声明性管道和多分支
- node.js - Sequelize 关联/模型在没有任何更改时突然无法识别,模糊错误无法读取未定义的属性“字段”
- c# - 如何使用以编程方式返回 FileContentResult 的 API 调用
- json - 如何通过快速更新特定值将数据重写到相同的 json 文件
- c# - 是否可以从 docker 容器内部访问任务定义
- chromium - 从网络选项卡捕获 Websocket 消息
- sql - 如何正确排序 SSRS 2016 中的字母数字参数/字段?
- arrays - 检查数组中的随机元素,如果为真则返回
- json - 如何在 tcl 中将多级字典写入 json?