执行完一个insert into 后返回一个值,该值为插入后生成的一个ID。SQL操作类中要如何写这个方法,写全一点,DB类和SQL操作类

解决方案 »

  1.   

    这个sql语句可以这样
    string cmdstring="inset into……;select @@IDENTITY"
    然后在后面执行的时候
    Sqlcommand cmd=……;
    int id=Convert.ToInt32(cmd.ExecuteScalar(cmdstring));
    这样就能完成取出id了    
      

  2.   

    insert into table(column1, column2) values(value1, value2);select @@identity;操作类就用查询的用DataReader 就可以执行了
      

  3.   

    存储过程给以个output 参数
      

  4.   

                SqlConnection conn = new SqlConnection(connStr);
                conn.Open();
                SqlCommand cmd = new SqlCommand("insert into [User] values(@name,@pwd,@purview)",conn);
                cmd.Parameters.AddWithValue("@name",user.Name);
                cmd.Parameters.AddWithValue("@pwd",user.Pwd);
                cmd.Parameters.AddWithValue("@purview",user.Purview);
                cmd.ExecuteNonQuery();
                cmd.CommandText = "select @@IDENTITY";
                int i = Convert.ToInt32(cmd.ExecuteScalar());
                conn.Close();
                return i;
      

  5.   

    ExecuteScalar  返回首行首列! 
      

  6.   

    在插入的sql语句中或者存储过程中加上这个:select @@IDENTITY
      

  7.   

    存储过程中用output存储参数
    sql server 2000
    用select @out=@@indentity
    2000以后的版本可以用
    select @out=@@identity

    select @out=last_value from sys.indentity_columns where object_id = Object_Id(N'表名')
      

  8.   

    insert into MyOrder(Qty,Amount,Address)values(3,200.00,'大阪');
      select @@IDENTITY
    正解,谢谢前辈们