欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

获取SQL SERVER数据库insert into操作的主键返回值

程序员文章站 2022-04-29 16:59:01
...

插入一条记录后想要立刻获取其数据表中的 主键 返回。这个主键是自动生成的,其实实现的方式有很多,比如再进行一次 查询 ,获取出来。或者在插入数据之前取出最大,在最大上面加一等等,方法很多,但是有些很不方便。 个人感觉最快的方式就是,在插入数据后

  插入一条记录后想要立刻获取其数据表中的主键返回值。这个主键是自动生成的,其实实现的方式有很多,比如再进行一次查询,获取出来。或者在插入数据之前取出最大值,在最大值上面加一等等,方法很多,但是有些很不方便。

  个人感觉最快的方式就是,在插入数据后直接获取主键的值,然后返回过来。

  方法如下:

  sql语句如下:

INSERT INTO tableName (fieldname ...) values (value ...) SELECT @@IDENTITY AS returnName;

  在sql语句中加入SELECT @@IDENTITY AS returnName;用来获取主键的值

  在程序中获取返回值:

public int sqlexecutereader(string sql)
  {
  DBopen();
  SqlCommand myComm = new SqlCommand(sql, Connection);
  int newID = Convert.ToInt32(myComm.ExecuteScalar());
  DBclose();
  return newID;
  }

  当然在此处主键是int类型的自动增加的。DBopen();DBclose();的操作在此就不多说了。