c#插入sql数据返回主键值
我调用类方法插入的数据
public static string insert(string sql, params SqlParameter[] parameters)
{
string connstr = ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
SqlConnection conn = new SqlConnection(connstr);
conn.Open();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = sql;
foreach (SqlParameter a in parameters)
{
cmd.Parameters.Add(a);
}
怎么返回刚插入的数据的主键值啊。。return 后面怎么写啊!
或者怎么改啊!!
[最优解释]
在写一句语句string sql='select @@identity'
再重数据库取一次,或者可以用top 1再去一次
[其他解释]
select SCOPE_IDENTITY
--不知道有没有
--IDENT_CURRENT 返回为任何会话和任何作用域中的特定表最后生成的标识值。
--语法:IDENT_CURRENT('table_name')
--@@IDENTITY 返回为当前会话的所有作用域中的任何表最后生成的标识值。
--语法:@@IDENTITY
--SCOPE_IDENTITY 返回为当前会话和当前作用域中的任何表最后生成的标识值。
-- 语法:SCOPE_IDENTITY()