ASP.NET学习基础四十:存储过程的使用

本文详细介绍了在Windows应用程序中,如何使用OleDb和SqlConnection执行存储过程`yxb`,包括参数输入与输出,并展示了DataGrid控件的排序功能的设置和使用。

存储过程为

CREATE PROCEDURE [dbo].[yxb]

@var1 varchar(50),

@var2 int out

AS

select @var2=(select count(*) from comeout where 卡类=@var1)

GO

1OleDb的方式

String constr="Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=dianxinkapin;Data Source=new"; 

OleDbConnection myConn = new OleDbConnection(constr) ;

myConn.Open ( ) ;

OleDbDataAdapter myCommand = new OleDbDataAdapter ("yxb",constr ) ;

myCommand.SelectCommand.CommandType=CommandType.StoredProcedure;

myCommand.SelectCommand.Parameters.Add("@var1",System.Data.OleDb.OleDbType.VarChar,50);

myCommand.SelectCommand.Parameters.Add("@var2",System.Data.OleDb.OleDbType.Integer);

myCommand.SelectCommand.Parameters["@var1"].Direction=ParameterDirection.Input;

myCommand.SelectCommand.Parameters["@var1"].Value=TextBox1.Text;

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

DataSet  myDataSet = new DataSet ( ) ;

myCommand.Fill(myDataSet,"comeout") ;

myConn.Close () ;

TextBox2.Text=myCommand.SelectCommand.Parameters["@var2"].Value.ToString(); 

2SqlClient的方式

SqlConnection myConnection =new SqlConnection("server=localhost;uid=sa;pwd=sa;database=dianxinkapin");

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

myCommand.Connection = myConnection;

myCommand.CommandType = CommandType.StoredProcedure;

SqlParameter prmfirst = new SqlParameter("@var1",SqlDbType.VarChar, 50);

prmfirst.Direction=ParameterDirection.Input;

prmfirst.Value = TextBox1.Text;

myCommand.Parameters.Add(prmfirst);

SqlParameter prmlast = new SqlParameter("@var2",SqlDbType.Int);

prmlast.Direction=ParameterDirection.Output;

myCommand.Parameters.Add(prmlast);

myConnection.Open();

myCommand.ExecuteNonQuery();

myConnection.Close();

TextBox2.Text=prmlast.Value.ToString();

56DataGrid的排序的使用

1)将DataGrid1AllowSortingAutoGenerateColumns都设为true

2)在DataGrid1_SortCommand中写

   string mystr2;

if (TextBox1.Text=="")

{

TextBox1.Text=e.SortExpression.ToString();

mybind(e.SortExpression.ToString());

return;

}

mystr2=e.SortExpression.ToString();

if (TextBox1.Text!=mystr2)

{

mybind(e.SortExpression.ToString());

TextBox1.Text=e.SortExpression.ToString();

return;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值