如何获取我当前插入访问数据库的内容的 ID
本文关键字:数据库 插入 访问 ID 何获取 获取 | 更新日期: 2023-09-27 18:35:24
我为其他数据库找到了很多这个问题的答案,但没有找到任何Microsoft访问的答案。
我有一个包含以下列的表:ID A B CID是自动编号,如何获取我刚刚插入的一行的ID。
顺便说一句:我正在使用 C#
谢谢
请参阅此处的 MSDN 文章。 在 MS Access 中,您需要在插入记录的语句范围内SELECT @@IDENTITY
。
你可以用oldes方法得到它。插入您的记录并为插入的最后一个 id 执行选择:
INSERT INTO table(column1, column2, ...) VALUES(value1, value2)
SELECT TOP 1 id FROM table ORDER BY id DESC
当然,这不是最好的,但它确实有效。
//C#
string query = "Insert Into Categories (CategoryName) Values (?)";
string query2 = "Select @@Identity";
int ID;
string connect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|Northwind.mdb";
using (OleDbConnection conn = new OleDbConnection(connect))
{
using (OleDbCommand cmd = new OleDbCommand(query, conn))
{
cmd.Parameters.AddWithValue("", Category.Text);
conn.Open();
cmd.ExecuteNonQuery();
cmd.CommandText = query2;
ID = (int)cmd.ExecuteScalar();
}
}