2023年6月21日发(作者:)
向数据库添加数据有三种方法利用 SQL语句添加、通过SqlParameter参数添加和通过存储过程添加。(三)
C# 2009-07-26 14:51:08 阅读444 评论0 字号:大中小 订阅
3.通过存储过程添加
存储过程可以过滤SQL语句中的非法字符,而且在创建时可直接在服务器上进行编译,所以执行起来比单个SQL语句快。通过存储过程添加数据,可以提高程序的执行效率,而且便于以后的维护。
利用存储过程向数据库添加记录时,首先要创建SqlConnection类的一个对象,用来连接数据库,然后使用SqlCommand对象的CommandType属性指定要执行的SQL文本命令为存储过程,并通过Add方法向SqlParameter中添加参数,最后使用SqlCommand对象的ExecuteNonQuery方法执行数据更新操作。
本例主要应用存储过程实现向图书信息数据库中添加数据,在页面指定的文本框中输入相关的添加信息,通过【添加】按钮的Click事件中调用存储过程来实现添加操作。
使用存储过程添加数据之前,首先需要创建存储过程probookinfo,代码如下:
CREATE PROCEDURE probookinfo
(@BookName [VarChar](50),
@BookIntroduce [VarChar](50),
@BookPrice [Money],
@BookIsNew [VarChar](50))
AS INSERT INTO [fangdawei].[dbo].[tb_BookInfo] (
[BookName],
[BookIntroduce],
[BookPrice],
[BookIsNew])
VALUES (
@BookName,
@BookIntroduce,
@BookPrice,
@BookIsNew)
GO
程序开发步骤:
(1)新建一个网站,将其命名为Ex19_03,默认主页为。
(2)向页中添加一个Table表格,用于布局页面,然后在Table表格中分别添加一个GridView控件、4个TextBox控件和一个Button控件,用来显示添加的结果、输入添加信息和执行添加命令。
(3)主要程序代码。
“添加信息”按钮Click事件代码如下:
protected void Button1_Click(object sender, EventArgs e)
{ SqlConnectionmyconn = new SqlConnection("server=(local);Database=fangdawei;Uid=sa;Pwd=");
//打开链接
();
string str = "select count(*) from tb_BookInfo where BookName='" +
ng() + "'";
//创建SqlCommand对象
SqlCommand com = new SqlCommand(str,myconn);
intintcont = 32(eScalar());
if (intcont> 0)
{
("alert('对不起!不允许填写相同记录!')");
}
else
{
try
{
SqlCommandmycom = new SqlCommand("probookinfo", myconn);
//调用存储过程
dType = Procedure;
//添加参数
SqlParameter[] prams ={
new SqlParameter("@BookName", r, 50),
new SqlParameter("@BookIntroduce", r, 50),
new SqlParameter("@BookPrice", , 8),
new SqlParameter("@BookIsNew", , 10),
};
//给参数赋值
prams[0].Value = ;
prams[1].Value = ;
prams[2].Value = mal();
prams[3].Value = ng();
foreach (SqlParameter parameter in prams)
{
(parameter);
}
//执行sql语句
eNonQuery();
();
BindData();
("alert('添加成功!')");
} catch(Exception ex)
{
(ng());
}
}
来源:/blog/static//
h0322的博客
2023年6月21日发(作者:)
向数据库添加数据有三种方法利用 SQL语句添加、通过SqlParameter参数添加和通过存储过程添加。(三)
C# 2009-07-26 14:51:08 阅读444 评论0 字号:大中小 订阅
3.通过存储过程添加
存储过程可以过滤SQL语句中的非法字符,而且在创建时可直接在服务器上进行编译,所以执行起来比单个SQL语句快。通过存储过程添加数据,可以提高程序的执行效率,而且便于以后的维护。
利用存储过程向数据库添加记录时,首先要创建SqlConnection类的一个对象,用来连接数据库,然后使用SqlCommand对象的CommandType属性指定要执行的SQL文本命令为存储过程,并通过Add方法向SqlParameter中添加参数,最后使用SqlCommand对象的ExecuteNonQuery方法执行数据更新操作。
本例主要应用存储过程实现向图书信息数据库中添加数据,在页面指定的文本框中输入相关的添加信息,通过【添加】按钮的Click事件中调用存储过程来实现添加操作。
使用存储过程添加数据之前,首先需要创建存储过程probookinfo,代码如下:
CREATE PROCEDURE probookinfo
(@BookName [VarChar](50),
@BookIntroduce [VarChar](50),
@BookPrice [Money],
@BookIsNew [VarChar](50))
AS INSERT INTO [fangdawei].[dbo].[tb_BookInfo] (
[BookName],
[BookIntroduce],
[BookPrice],
[BookIsNew])
VALUES (
@BookName,
@BookIntroduce,
@BookPrice,
@BookIsNew)
GO
程序开发步骤:
(1)新建一个网站,将其命名为Ex19_03,默认主页为。
(2)向页中添加一个Table表格,用于布局页面,然后在Table表格中分别添加一个GridView控件、4个TextBox控件和一个Button控件,用来显示添加的结果、输入添加信息和执行添加命令。
(3)主要程序代码。
“添加信息”按钮Click事件代码如下:
protected void Button1_Click(object sender, EventArgs e)
{ SqlConnectionmyconn = new SqlConnection("server=(local);Database=fangdawei;Uid=sa;Pwd=");
//打开链接
();
string str = "select count(*) from tb_BookInfo where BookName='" +
ng() + "'";
//创建SqlCommand对象
SqlCommand com = new SqlCommand(str,myconn);
intintcont = 32(eScalar());
if (intcont> 0)
{
("alert('对不起!不允许填写相同记录!')");
}
else
{
try
{
SqlCommandmycom = new SqlCommand("probookinfo", myconn);
//调用存储过程
dType = Procedure;
//添加参数
SqlParameter[] prams ={
new SqlParameter("@BookName", r, 50),
new SqlParameter("@BookIntroduce", r, 50),
new SqlParameter("@BookPrice", , 8),
new SqlParameter("@BookIsNew", , 10),
};
//给参数赋值
prams[0].Value = ;
prams[1].Value = ;
prams[2].Value = mal();
prams[3].Value = ng();
foreach (SqlParameter parameter in prams)
{
(parameter);
}
//执行sql语句
eNonQuery();
();
BindData();
("alert('添加成功!')");
} catch(Exception ex)
{
(ng());
}
}
来源:/blog/static//
h0322的博客
发布评论