Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用sqlalchemy在sqlite3中插入来自金字塔框架的空日期_Python_Sqlite_Date_Sqlalchemy_Pyramid - Fatal编程技术网

Python 使用sqlalchemy在sqlite3中插入来自金字塔框架的空日期

Python 使用sqlalchemy在sqlite3中插入来自金字塔框架的空日期,python,sqlite,date,sqlalchemy,pyramid,Python,Sqlite,Date,Sqlalchemy,Pyramid,从sqlite提示符>我可以执行以下操作: python 2.7 pyramid 1.3a4 sqlalchemy 7.3 sqlite3.7.9 这两种方法都会导致一个新行的risk.travel\u dt值为空,但当我从pyramid中尝试这些travel\u dt值时,Sqlalchemy给了我一个错误 在第一种情况下,我得到sqlalchemy.exc.StatementError: SQLite日期类型仅接受python日期对象作为输入 在第二种情况下,未定义我得到的Null。当我使

从sqlite提示符>我可以执行以下操作:

python 2.7
pyramid 1.3a4
sqlalchemy 7.3
sqlite3.7.9
这两种方法都会导致一个新行的
risk.travel\u dt
值为空,但当我从pyramid中尝试这些
travel\u dt
值时,Sqlalchemy给了我一个错误

在第一种情况下,我得到
sqlalchemy.exc.StatementError

SQLite日期类型仅接受python日期对象作为输入

在第二种情况下,未定义我得到的
Null
。当我使用“Null”时,我得到第一个case错误

我为关于nulls的另一个问题道歉:我读了很多材料,但肯定错过了一些简单的东西。谢谢你的帮助
Clemens Herschel

虽然您没有提供对正在使用的表定义或任何示例代码的任何见解,但我猜问题是由于混淆了
NULL
(数据库保留字)和
None
(Python保留字)

错误消息告诉您需要使用有效的python
date
对象调用SQLA方法,而不是使用诸如“Null”或“”之类的字符串

假设您有一个名为
risk
的表,其中包含一个名为
travel\u dt
的列,您应该能够在该表中创建类似以下内容的行:

insert into risk(travel_dt) values ('')
also
insert into risk(travel_dt) values(Null)

请注意,这只是一个片段,您需要在
引擎
上下文中执行这样的调用,就像在中定义的那样。抱歉,我没有提供示例代码或表定义;我尽量简洁。好的推论。谢谢你的帮助;那是我的困惑。
risk.insert().values(travel_dt=None)