如何得到select 1的返回结果?
也就是我要得到返回值 1
select 2
返回值 2

解决方案 »

  1.   

    SqlCommand1.Text = "select 1";....int i = int.Parse(SqlCommand1.ExecuteScalar().ToString());
      

  2.   

    谢谢
    再请问。如何获得存储过程中的return 1的返回值??
      

  3.   

    我没有试过用存储过程的返回值
    一般都是用output的参数
      

  4.   


    SqlParameter param = YourSqlCommand.CreateParameter();
    param.Direction    = ParameterDirection.ReturnValue;
    YourSqlCommand.Parameters.Add( param );
      

  5.   

    Select 1 as One, 2 as Two, '3' as Three返回的结构是列名   One    Two    Three
    值      1      2      "3"
      

  6.   

    比如存储过程是proc1
    .....
    return 1现在要获得1这个返回结果
    大家帮忙看看
      

  7.   

    int i = SqlCommand1.ExecuteNonQuery().ToString();
      

  8.   

    不好意思,看错了SqlParameter param = new SqlParameter();
    param.Direction = System.Data.ParameterDirection.ReturnValue;command.Parameters.Add(param);   int i = int.Parse(SqlCommand1.ExecuteScalar().ToString());int nReturn = (int)param.Value;
      

  9.   

    qimini(循序渐进)
    不对阿
    你试试看
    create proc test
    return 1用上面你的方法,出错啊!不能得到返回值1
      

  10.   

    把你取得返回值的代码贴出来看看!一般设置参数的方向(即Direction)为ParameterDirection.ReturnValue;用SqlCommand的ExecuteScalar().ToString()方法得到返回值
      

  11.   

    (create proc test return 1)  <---- 这句存储过程你调得通吗?写得有问题吧?
      

  12.   

    代码:
    SqlParameter param = new SqlParameter();
    param.Direction = System.Data.ParameterDirection.ReturnValue;
    command.Parameters.Add(param);   
    string s = SqlCommand1.ExecuteScalar().ToString();
    存储过程:
    create proc test
    return 1
    出错信息:"未将对象引用到对象的实例"
    如果存储过程改为如下:
    create proc test
    select 1
    正常返回1
      

  13.   

    上面的存储过程少了as
    存储过程:
    create proc test
    as
    return 1
      

  14.   

    command.Parameters.Add(param);   
    string s = SqlCommand1.ExecuteScalar().ToString();//不是同一个SqlCommand!
    ……》
    SqlCommand1.Parameters.Add(param);   
    string s = SqlCommand1.ExecuteScalar().ToString();
      

  15.   

    command.CommandText = commandtext ;
    System.Data.SqlClient.SqlParameter param = new System.Data.SqlClient.SqlParameter();
    param.Direction = System.Data.ParameterDirection.ReturnValue;
    command.Parameters.Add(param);
    string s = command.ExecuteScalar().ToString();
    还是不对!
      

  16.   

    System.Data.SqlClient.SqlCommand m_cmd=new System.Data.SqlClient.SqlCommand();
    m_cmd.CommandType=CommandType.StoredProcedure;
    m_cmd.Connection=this.sqlConnection1;
    m_cmd.CommandText="dbo.[StoredProcedure1]";
    m_cmd.Parameters.Add(new System.Data.SqlClient.SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, false, ((System.Byte)(0)), ((System.Byte)(0)), "", System.Data.DataRowVersion.Current, null));
    this.sqlConnection1.Open();
    m_cmd.ExecuteNonQuery();
    MessageBox.Show(m_cmd.Parameters["@RETURN_VALUE"].Value.ToString());StoredProcedure1:
    ALTER PROCEDURE dbo.StoredProcedure1
    AS
    RETURN 1
      

  17.   

    SqlParameter param = new SqlParameter();
    param.Direction = System.Data.ParameterDirection.ReturnValue;command.Parameters.Add(param);   int i = command.ExecuteNonQuery();int nReturn = (int)param.Value;//代码本机测试通过
      

  18.   

    create proc test
    as
    return 1然后你在查询分析器里面执行test后,只显示成功但并无返回值所以确切应该这样
    create proc test
    as
    return 1...
    DECLARE @return_value int
    EXEC @return_status = test
    SELECT 'Return Value' = @return_status
    也就是说SQL需要用本地变量才能取到return的值
      

  19.   

    create proc test
    as
    return 1然后你在查询分析器里面执行test后,只显示成功但并无返回值所以确切应该这样
    create proc test
    as
    return 1...
    DECLARE @return_value int  
    EXEC @return_value = test --无参数的存储过程
    SELECT 'Return Value' = @return_value   --得到存储过程中return的值也就是说SQL需要用本地变量才能取到return的值
      

  20.   

    to:qimini(循序渐进) 
    ExecuteNonQuery()指的是SQL语句影响的记录行数吧
      

  21.   

    faint,连写错了两个!:(to:qimini(循序渐进) 
    ExecuteNonQuery()的返回值指的是SQL语句影响的记录行数吧
      

  22.   

    int nReturn = (int)param.Value;//这句才是获取返回值的啊:)
      

  23.   

    qimini(循序渐进) ( ) 对的,我想错了!
    :D
      

  24.   

    param.Value得到返回值,关键是return 1返回,param.Value返回的值为空,所以还是得不到返回值