在我的一个项目中,我不得不从数据库中获取最后一个插入的ID,这样我就可以将新插入的数据与存储器数据同步,而无需执行SELECT * FROM my_db;
查询,即我正在执行SELECT * FROM my_db WHERE id=new_index
。MySqlCommand.LastInsertedId是如何工作的?
现在,我知道我正在使用的MySQL支持查询select last_insert_id();
,所以我想我只是执行该命令并执行它。但在深入研究C#(我用于项目的编程语言)后,我发现MySqlCommand
有一个LastInsertedId
字段。
现在让我感到困惑的是,我期望字段的获取者只是执行相同的select last_insert_id();
查询,但是从MySQL查看日志时,我看不到任何这样的查询。
所以我的问题是,MySqlCommand.LastInsertedId
如何知道当ID由MySQL服务器自动生成时,为我插入的元组分配了什么ID?
您是否启用了记录**全部**在该服务器上执行的查询? – e4c5
@ e4c5我执行了'SET GLOBAL general_log ='ON';'命令,所以是的。无论如何,我看到我有我的问题回答。无论如何感谢对这个主题的兴趣。 – ILA