c#調用存儲過程查詢表並返回影響的行數


 // 在此處放置用戶代碼以初始化頁面        

String DBConnStr;        

DataSet MyDataSet = new DataSet();        

SqlDataAdapter DataAdapter = new SqlDataAdapter();        

DBConnStr = "server=192.168.2.120,2433;database=DB_test;uid=sa;pwd=43g";        

SqlConnection myConnection = new SqlConnection(DBConnStr);        

if (myConnection.State != ConnectionState.Open)

        {            

myConnection.Open();        

}        

SqlCommand myCommand = new SqlCommand("Proc_test", myConnection);        

myCommand.CommandType = CommandType.StoredProcedure;         //添加輸入查詢參數、賦予值        

myCommand.Parameters.Add("@userInput", SqlDbType.VarChar);        

myCommand.Parameters["@userInput"].Value = "zhang,zhangjun";

        //添加輸出參數        

myCommand.Parameters.Add("@Rowcount", SqlDbType.Int);       

  myCommand.Parameters["@Rowcount"].Direction = ParameterDirection.Output;

        myCommand.ExecuteNonQuery();    

     DataAdapter.SelectCommand = myCommand;

        if (MyDataSet != null)       

  {     

        DataAdapter.Fill(MyDataSet, "table");       

  }

           //得到存儲過程輸出參數        

string retcount = myCommand.Parameters["@Rowcount"].Value.ToString();

        if (myConnection.State == ConnectionState.Open)   

      {         

    myConnection.Close();        

}

 

 

drop proc Proc_test @userInput varchar(2000), @Rowcount INT OUTPUT as

if(@userInput = '')   begin     RAISERROR ('輸入項不能為空.', 17, 1)     RETURN   end

declare @sql varchar(4000);

set @userInput = '''' + REPLACE(@userInput,',',''',''') + ''''

set @sql='select * from view_Shop_Order where _name in('+@userInput+')' set @Rowcount=1 print @sql; Exec(@sql)

Proc_test 'zhang,zhangjun',0   

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM