【c # 数据库】存储过程

时间:2023-03-08 16:44:17

可理解存储过程是方法,快速调用,方便使用。

数据库建立新的存储过程:【c # 数据库】存储过程

CREATE PROCEDURE myProc
-- Add the parameters for the stored procedure here :本存储过程可以向try表中插入一条记录 @username varchar(),
@password varchar(),
@name varchar(),
@usertype varchar(),
@createpeople varchar()
AS
insert into try(UserName,PassWord,Name,UserType,CreatePeople) values(@username,@password,@name,@usertype,@createpeople)//有输入
GO

执行:

exec dbo.myProc 'bubble','','Season','char',''

【c # 数据库】存储过程

查阅文章:https://www.cnblogs.com/ToNi/p/4234370.html  (sql sever )

https://www.cnblogs.com/hongmaju/p/4571615.html (c#调用)

https://www.cnblogs.com/qq458978/p/4546253.html  (c#调用)

----------------------------------------------------------------------------------------------------------------

结合c#:

CREATE PROCEDURE myPrec

@姓名 nchar(),
@学号 nchar(),
@性别 nchar(),
@总分 nchar()
AS
insert into studentsinfo(姓名,学号,性别,总分) values(@姓名,@学号,@性别,@总分)
GO

c#部分

private void button5_Click(object sender, EventArgs e)
{ SqlConnection conStr = null; //创建SqlConnection 的对象 try //try里面放可能出现错误的代码
{ string strsql = "data source=.;initial catalog=student;Integrated Security=True";//数据库链接字符串
string sql = "dbo.myPrec";//要调用的存储过程名 conStr = new SqlConnection(strsql);//SQL数据库连接对象,以数据库链接字符串为参数
SqlCommand comStr = new SqlCommand(sql, conStr);//SQL语句执行对象,第一个参数是要执行的语句,第二个是数据库连接对象 comStr.CommandType = CommandType.StoredProcedure;//因为要使用的是存储过程,所以设置执行类型为存储过程
//输入数据
comStr.Parameters.Add("@姓名", SqlDbType.Text).Value = this.name.Text;
comStr.Parameters.Add("@学号", SqlDbType.Text).Value = this.id.Text;
comStr.Parameters.Add("@性别", SqlDbType.Text).Value = this.sex.Text;
comStr.Parameters.Add("@总分", SqlDbType.Text).Value = this.score.Text; conStr.Open();//打开数据库连接 SqlDataAdapter SqlDataAdapter1 = new SqlDataAdapter(comStr); MessageBox.Show("finish!");
}
catch (Exception) //当try中有错误则执行catch中的代码,否则不执行
{
MessageBox.Show("网络异常!"); } finally //无论如何都会执行finally中的代码
{ if (conStr != null) //判断con不为空
{
conStr.Close(); }
}

结果:

【c # 数据库】存储过程