首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

插入一条信息后,怎么取到插入后产生的id(既select @@IDENTITY的C#用法)

2012-04-18 
插入一条信息后,如何取到插入后产生的id(既select @@IDENTITY的C#用法)代码如下:C# codeStringBuilder str

插入一条信息后,如何取到插入后产生的id(既select @@IDENTITY的C#用法)
代码如下:

C# code
StringBuilder strSql = new StringBuilder();            strSql.Append("insert into DialogueQuantity(");            strSql.Append("LocalAllCount,NoLocalAllCount,LocalValidCount,NoLocalValidCount,StatisticsDate,ProjectID,UID)");            strSql.Append(" values (");            strSql.Append("@LocalAllCount,@NoLocalAllCount,@LocalValidCount,@NoLocalValidCount,@StatisticsDate,@ProjectID,@UID)");            strSql.Append(";select @@IDENTITY");            SqlParameter[] parameters = {                    new SqlParameter("@LocalAllCount", SqlDbType.Int,4),                    new SqlParameter("@NoLocalAllCount", SqlDbType.Int,4),                    new SqlParameter("@LocalValidCount", SqlDbType.Int,4),                    new SqlParameter("@NoLocalValidCount", SqlDbType.Int,4),                    new SqlParameter("@StatisticsDate", SqlDbType.DateTime,3),                    new SqlParameter("@ProjectID", SqlDbType.Int,4),                    new SqlParameter("@UID", SqlDbType.NVarChar,30)};            parameters[0].Value = cqm.LocalAllCount;            parameters[1].Value = cqm.NoLocalAllCount;            parameters[2].Value = cqm.LocalValidCount;            parameters[3].Value = cqm.NoLocalValidCount;            parameters[4].Value = cqm.StatisticsDate;            parameters[5].Value = cqm.ProjectID;            parameters[6].Value = cqm.UID;            int resultValue = SqlHelper.ExecuteNonQuery(AES.Decryption(ConfigurationManager.ConnectionStrings["sqlconn"].ConnectionString,"XXXX"), CommandType.Text, strSql.ToString(), parameters);


注意sql语句的最后一个 ;select @@IDENTITY我想知道插入该条信息后产生的id是多少,代码应该如何修改?

[解决办法]
insert into temp value();select @@IDENTITY;
写在一起,使用ExecuteScaler执行
 
此消息通过 【CSDN论坛 Winform正式版】 回复!有关此工具
[解决办法]
用以下這個函數ExecuteScalar(),返回對象,轉換成int便可

热点排行