使用 pyodbc,如果我尝试在日期字段上执行此代码:
cursor.execute('insert into test VALUES (?)', None)
... 我得到 pyodbc.Error: ('HY000', '[HY000] [SAS][SAS ODBC Driver][SAS Server]ERROR: VALUES 子句 1 的值 1 与数据类型不匹配(-1) (SQLExecDirectW)') 中相应列的
,而如果我执行此操作:
cursor.execute('insert into test VALUES (null)')
... 它有效。有没有其他方法可以执行此操作,这意味着我不需要检查我传递的参数?
最佳答案
在我的源码中(Python 2.71/pyodbc 2.1.8),以MS Access为基础,下面的代码就可以了
st_dt=None
sql = 'insert into COM(poste,mydate) values (?,?)'
cursor.execute(sql,'1254',st_dt)
cnxn.commit()
其中 mydate 是没有默认值的时间戳列。
关于python - 将空值绑定(bind)到 pyodbc 中的日期字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2900524/