读书人

c#安插sql数据返回主键值

发布时间: 2012-12-20 09:53:21 作者: rapoo

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

[其他解释]
把SQL换成存储过程,里面写上插入语句,插入成功时获取主键值作为存储过程返回值
[其他解释]
string sql=“select .....”

sql+="select @@identity";

调用读取sql语句的方法
[其他解释]
返回主键值,需要从数据库再取一次。
[其他解释]
建议去.NET问问
[其他解释]
insert into [tablename]
(lie1,lie2) output [tablename].lie_id values(@lie1,@lie 2)
[其他解释]
~~~写个过程,插入时调用他,返回主键~~
[其他解释]
引用:
把SQL换成存储过程,里面写上插入语句,插入成功时获取主键值作为存储过程返回值

这样真的可以...
[其他解释]
--不知道有没有
--IDENT_CURRENT 返回为任何会话和任何作用域中的特定表最后生成的标识值。
--语法:IDENT_CURRENT('table_name')


--@@IDENTITY 返回为当前会话的所有作用域中的任何表最后生成的标识值。
--语法:@@IDENTITY

--SCOPE_IDENTITY 返回为当前会话和当前作用域中的任何表最后生成的标识值。
-- 语法:SCOPE_IDENTITY()

[其他解释]
[quote1=引用:]
SQL code??



12345678910

--不知道有没有 --IDENT_CURRENT 返回为任何会话和任何作用域中的特定表最后生成的标识值。 --语法:IDENT_CURRENT('table_name') --@@IDENTITY 返回为当前会话的所有作用域中的任何表最后生成的标识值。 --语法:@@IDENTITY --SCOPE_IDENTITY 返……[/quote]

读书人网 >SQL Server

热点推荐