插入数据后返回sql server主键值的方法


  本文标签:sql server主键

  如果想要获取数据表中sql server主键返回值,应该采用何种方法呢?下面就将教您一个解决此问题的方法,希望对您学习sql server主键有所启迪  。

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

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

  sql语句如下:

  1. INSERT INTO tableName (fieldname ...) values (value ...) SELECT @@IDENTITY AS returnName;  
  2. 在sql语句中加入SELECT @@IDENTITY AS returnName;用来获取主键的值  
  3. 在程序中获取返回值:  
  4. public int sqlexecutereader(string sql)  
  5.     {  
  6.         DBopen();  
  7.         SqlCommand myComm = new SqlCommand(sql, Connection);  
  8.         int newID = Convert.ToInt32(myComm.ExecuteScalar());  
  9.         DBclose();  
  10.         return newID;  
  11.     } 

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