读书人

插入一条信息后怎么取到插入后产生的

发布时间: 2012-04-18 15:01:59 作者: rapoo

插入一条信息后,如何取到插入后产生的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便可

读书人网 >C#

热点推荐