gpt4 book ai didi

c# - 使用 C# 在 postgresql 中返回最后插入的 ID

转载 作者:行者123 更新时间:2023-11-29 12:38:24 25 4
gpt4 key购买 nike

我是一个在表中插入记录的函数,我想获取插入的 ID。我能怎么做?我必须重新查询吗?

        using (NpgsqlConnection conn = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["AxWaveConnection"].ToString()))
{

conn.Open();
NpgsqlTransaction transaction = conn.BeginTransaction();


String query =
"INSERT INTO Video (youtubeidvideo, title, rating, viewcount, duration, dataadded, errorflag, schedulingflag, schedulingdate, convertdate) " +
"VALUES ('" + youtubeIdVideo + "','" + title + "'," + rating.ToString().Replace(',', '.') + "," + viewCount.ToString() + "," +
duration.ToString() + ", now(), false, false, null, null); ";

NpgsqlCommand cmd = new NpgsqlCommand(query, conn, transaction);

try
{
cmd.ExecuteNonQuery();


}
catch (Exception e)
{
scopeID = -1; //Duplicate Record
}

transaction.Commit();
conn.Close();
}

最佳答案

你能试试这个吗:

SELECT CURRVAL(pg_get_serial_sequence('my_tbl_name','id_col_name'))

当然,您需要提供表名和列名。

这将用于当前 session /连接

http://www.postgresql.org/docs/8.3/static/functions-sequence.html

你也可以看看这个

参见 INSERT 的 RETURNING 子句陈述。基本上,INSERT 兼作查询并返回插入的值。

关于c# - 使用 C# 在 postgresql 中返回最后插入的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14851313/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com