为了账号安全,请及时绑定邮箱和手机立即绑定

使用C#从SQL Server插入命令返回值

使用C#从SQL Server插入命令返回值

C#
慕尼黑5688855 2019-11-03 08:04:31
我在Visual Studio中使用C#,将一行插入到这样的表中:INSERT INTO foo (column_name)VALUES ('bar')我想做这样的事情,但是我不知道正确的语法:INSERT INTO foo (column_name)VALUES ('bar')RETURNING foo_id这将从foo_id新插入的行返回该列。此外,即使我找到了正确的语法,我仍然遇到另一个问题:我拥有SqlDataReader并SqlDataAdapter可以支配。据我所知,前一个用于读取数据,第二个用于处理数据。当插入带有return语句的行时,我同时在操作和读取数据,因此我不确定该使用什么。也许我应该使用完全不同的东西?
查看完整描述

3 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

我认为您可以为此使用@@ IDENTITY,但是我认为周围有一些特殊的规则/限制吗?


using (var con = new SqlConnection("connection string"))

{

    con.Open();

    string query = "INSERT INTO table (column) VALUES (@value)";


    var command = new SqlCommand(query, con);

    command.Parameters.Add("@value", value);

    command.ExecuteNonQuery();


    command.Parameters.Clear();

    command.CommandText = "SELECT @@IDENTITY";


    int identity = Convert.ToInt32(command.ExecuteScalar());

}



查看完整回答
反对 回复 2019-11-04
  • 3 回答
  • 0 关注
  • 343 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信