从sqlite数据库返回自动生成的列值

从sqlite数据库返回自动生成的列值,sqlite,c#-3.0,Sqlite,C# 3.0,如何在c中从sqlite数据库返回自动生成的列值。我正在使用Sqlite.data.dll 通过执行查询尝试:选择last_insert_rowid,但它没有;它似乎不起作用,因为它正在返回0秒。我使用SqliteDataReader对象来获得结果 谢谢您的id是否增加了?然后试试这个: 选择maxid 或者你可以参考这篇文章 我尝试了这些命令,即使最后的\u insert\u rowid调用来自另一个事务,它也可以正常工作: sqlite> create table mytable(pk

如何在c中从sqlite数据库返回自动生成的列值。我正在使用Sqlite.data.dll

通过执行查询尝试:选择last_insert_rowid,但它没有;它似乎不起作用,因为它正在返回0秒。我使用SqliteDataReader对象来获得结果


谢谢

您的id是否增加了?然后试试这个:

选择maxid

或者你可以参考这篇文章


我尝试了这些命令,即使最后的\u insert\u rowid调用来自另一个事务,它也可以正常工作:

sqlite> create table mytable(pk integer primary key, other stuff);
sqlite> insert into mytable values(null, 42);
sqlite> select last_insert_rowid();
1

last_insert_rowid的唯一要求是在同一数据库连接上调用它;请检查您是否未打开另一个。

ID列是自动增量列和主键。SELECT maxID有效,但这是检索自动生成列值的最佳方法吗?谢谢…我使用不同的数据库连接获取自动生成列,但使用相同的连接工作正常。这是线程安全的吗?如果在insert和select last_ins之间的第二个和第三个语句之间插入了不同的连接,该怎么办?@LimitedAtonement这是。