ACCESS里面创建带参数的存储过程

需要注意的是page_load里面的创建存储过程只能执行一次,如果第二次还要创建同名的话会提示错误信息“存储过程已经存在。”,其实加个判断就行了。懒得加了,只是用来试验一下。
调试环境 ASP.NET 2.0(编译工具VS2008),代码C#,access版本2003
protected void Page_Load(object sender, EventArgs e) { OleDbConnection oledb = new OleDbConnection(); oledb.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D://asp99cms.mdb;Jet OLEDB:Database Password="; oledb.Open(); if (oledb.State == ConnectionState.Open) { string str = "Create proc pr_test(@uid int) As select * from Download where [ID]=@uid"; OleDbCommand olecom = new OleDbCommand(); olecom.CommandText = str; olecom.Connection = oledb; olecom.ExecuteNonQuery(); oledb.Dispose(); } oledb.Close(); oledb.Dispose(); } protected void Button2_Click(object sender, EventArgs e) { OleDbConnection oledb = new OleDbConnection(); oledb.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D://asp99cms.mdb;Jet OLEDB:Database Password="; oledb.Open(); if (oledb.State == ConnectionState.Open) { OleDbCommand olecom = new OleDbCommand("pr_test",oledb); olecom.CommandType = CommandType.StoredProcedure; olecom.Parameters.Add(new OleDbParameter("@uid",OleDbType.Integer)).Value=TextBox1.Text; olecom.Connection = oledb; OleDbDataReader oledr; oledr=olecom.ExecuteReader(); oledr.Read(); if (oledr.HasRows) { Response.Write("存储过程执行成功"); } oledr.Close(); oledr.Dispose(); oledb.Dispose(); } oledb.Close(); oledb.Dispose(); }

你可能感兴趣的:(object,database,存储,asp.net,Access,textbox)