我有一个本地 sqlite 服务器。SQL 数据库只包含一个名为flights. 该表flights仅包含两列:dt和flight。它是这样创建的:CREATE TABLE IF NOT EXISTS flight (dt INT NOT NULL, flight INT PRIMARY KEY);. dt表示日期时间。此列dt包含每个航班的时间和日期戳。该flight列是每个航班的自动增量 ID。
我现在需要创建航班并记录 ID。但我认为我下面的方法非常愚蠢。必须有比这更好的方法。下面的代码不起作用,因此增加了我尝试的愚蠢性。它返回当前打印(None,)的 .
为了进一步澄清,我需要做的就是添加一个带有提供时间戳的航班。然后找到我刚刚创建的航班的id。应该足够简单。
t = (int(time.time()),)
conn, c = AT.startSQLdb()
c.execute("INSERT INTO flight VALUES (?,NULL);",t)
c.execute("SELECT flight FROM flight WHERE dt=?;",t)
print c.fetchone()
conn.commit()
顺便说一句,AT.startSQLdb()它只是一个返回元组的方法(sql connection, sql cursor)。我只是将它作为一个函数来保持所有线程的启动功能相同。