[转载]c#中添加数据到数据库中的三种⽅法.
1.利⽤SQL语句添加
在SQL语句中提供了INSERT语句进⾏数据添加,其语法格式如下。
INSERT [Into] table_name[(column_list)] values (data_values)
说明:INSERT是关健字,Into是可选项,table_name为表名,即向哪个表中插⼊数据。column_list为表中列名,如果为多列,则列名间⽤逗号隔开,省略该参数,即向表中所有列插⼊数据。data_values为向表中插⼊的数据。
利⽤SQL语句向数据库添加记录时,⾸先要创建SqlConnection类的⼀个对象,⽤来连接数据库,然后定义添加的SQL字符串,最后使⽤SqlCommand对象的ExecuteNonQuery⽅法执⾏记录的添加操作。
本例通过在指定的⽂本框中输⼊所要添加的⽤户信息,单击【添加】按钮,通过在按钮的Click事件中利⽤SQL语句来实现添加过程,添加的信息将显⽰在GridView控件中。
程序开发步骤:
(1)新建⼀个⽹站,将其命名为Ex19_01,默认主页为Default.aspx。
(2)向Default.aspx页中添加⼀个Table表格,⽤于布局页⾯,然后在Table表格中分别添加⼀个GridView控件、3个TextBox控件和⼀个Button控件,⽤来显⽰添加的结果、输⼊添加信息和执⾏添加命令。
(3)主要程序代码。
⾸先,在Page_Load事件中调⽤⾃定义的绑定⽅法。
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
{
GridViewBind();
}
}
⾃定义绑定⽅法GridViewBind()代码如下。
public void GridViewBind()
{
SqlConnection con = new SqlConnection("Server=(Local);Uid=sa;pwd=;DataBase=fangdawei");
con.Open();
SqlDataAdapter ada = new SqlDataAdapter("select * from tb_Member", con);
DataSet ds = new DataSet();
ada.Fill(ds);
GridView1.DataSource = ds;
GridView1.DataBind();
con.Close();
}
⾃定义⼀个getConut()⽅法,此⽅法将⽤来判断是否有添加了相同的记录,代码如下。
public int getConut()
{
SqlConnection con = new SqlConnection("Data Source=(local);Database=fangdawei;Uid=sa;Pwd=;");
con.Open();
string str = "select * from tb_Member where name='" + TextBox1.Text + "'and sex='" + TextBox2.Text + "'and nPlace='" +
asp源码 建站TextBox3.Text + "'";
SqlCommand com = new SqlCommand(str, con);
int intcont = Convert.ToInt32(com.ExecuteScalar());
con.Close();
com.Clone();
return intcont;
}
"添加"按钮Click事件代码如下。
protected void Button1_Click(object sender, EventArgs e)
{
if (getConut() != 0)//判断是否添加了相同的记录
unaware{
Response.Write("alert('对不起!不允许填写相同记录!')");
}
else
{
try
{
SqlConnection sqlcon = new SqlConnection("Data Source=(local);Database=fangdawei;Uid=sa;Pwd=;");
sqlcon.Open();
string InsertSql = "insert into tb_Member(name,sex,nPlace) values ('" + TextBox1.Text + "','" + TextBox2.Text + "','" +
TextBox3.Text + "')";
SqlCommand com = new SqlCommand(InsertSql, sqlcon);
com.ExecuteNonQuery();
SqlDataAdapter ada = new SqlDataAdapter("select * from tb_Member", sqlcon);
DataSet ds = new DataSet();
ada.Fill(ds, "tb_Member ");
GridView1.DataSource = ds;
mysql语句的执行顺序
GridView1.DataBind();
sqlcon.Close();
Response.Write("alert('添加成功!')");
}
catch(Exception ex)
{
Response.Write("ex.Message.ToString()");
}
}
}
2.通过SqlParameter参数添加
通过SqlParameter参数向数据库添加数据,主要使⽤SqlParameter类的⼀些属性和⽅法。
⾸先要创建SqlConnection类的⼀个对象,⽤来连接数据库,然后插⼊⼀个带参数的SQL命令。
例如,使⽤的带参数的SQL命令实现向数据库的图书信息表(“tb_BookInfo”表)中添加相关的图书信息,代码如下。
insert into tb_BookInfo (BookName,BookIntroduce,BookPrice,BookIsNew)
values(@BookName,@BookIntroduce,@BookPrice,@BookIsNew)
插⼊完带参数的SQL命令后,通过SqlCommand对象的Add⽅法向SqlParameter中添加参数,并给相应的参数赋值,最后使⽤SqlCommand对象的ExecuteNonQuery⽅法执⾏记录的添加操作。
说明:在使⽤带参数的SQL命令(如insert、update和delete等命令)时,其中的参数必须要⽤标识符@来标记,⽽参数名称可⾃⼰定义。在这种情况下,参数与命令关联的顺序就不重要了。
注意:OLEDB和ODBC数据源使⽤以问号(?)占位符标识的定位参数。参数的顺序是重要的。这⼀点与SQL Server是不同的,要牢记!本例通过在页⾯指定的⽂本框中输⼊要添加的相关信息,通过在【添加】按钮的Click事件中使⽤SqlParameter参数来实现添加操作,添加的信息将显⽰在GridView控件中。
程序开发步骤:
(1)新建⼀个⽹站,将其命名为Ex19_02,默认主页为Default.aspx。
(2)向Default.aspx页中添加⼀个Table表格,⽤于布局页⾯,然后在Table表格中分别添加⼀个GridView控件、4个TextBox控件和⼀个Button控件,⽤来显⽰添加的结果、输⼊添加信息和执⾏添加命令。
(3)主要程序代码。
“添加信息”按钮Click事件代码如下:
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("Data Source=(local);Database=fangdawei;Uid=sa;Pwd=;");
con.Open();
string str = "select count(*) from tb_BookInfo where BookName='" + TextBox1.Text.ToString() + "'";
hadoop搭建大数据平台
SqlCommand com = new SqlCommand(str, con);
int intcont = Convert.ToInt32(com.ExecuteScalar());
if (intcont > 0)//判断数据库中是否有相同的录
{
Response.Write("alert('对不起!不允许填写相同记录!')");
}
else
{
try
{
//插⼊命令
string sqlstr = "insert into tb_BookInfo (BookName,BookIntroduce,BookPrice,BookIsNew)
values(@BookName,@BookIntroduce,@BookPrice,@BookIsNew)";
SqlCommand mycom = new SqlCommand(sqlstr, con);
//添加参数
mycom.Parameters.Add(new SqlParameter("@BookName", SqlDbType.VarChar,50));
mycom.Parameters.Add(new SqlParameter("@BookIntroduce", SqlDbType.VarChar,50));
mycom.Parameters.Add(new SqlParameter("@BookPrice", SqlDbType.Money,8));
mycom.Parameters.Add(new SqlParameter("@BookIsNew", SqlDbType.Char,10));
//给参数赋值
mycom.Parameters["@BookName"].Value = TextBox1.Text;
mycom.Parameters["@BookIntroduce"].Value = TextBox2.Text;
mycom.Parameters["@BookPrice"].Value = Convert.ToDecimal(TextBox3.Text);
mycom.Parameters["@BookIsNew"].Value = DropDownList1.SelectedValue.ToString();
//执⾏添加语句
mycom.ExecuteNonQuery();
con.Close();
BindData();
Response.Write("alert('添加成功!')");
}
catch(Exception ex)
{
Response.Write(ex.Messgae.ToString());
}
}
pow函数怎么读}
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,默认主页为Default.aspx。
(2)向Default.aspx页中添加⼀个Table表格,⽤于布局页⾯,然后在Table表格中分别添加⼀个GridView控件、4个TextBox控件和⼀个Button控件,⽤来显⽰添加的结果、输⼊添加信息和执⾏添加命令。
(3)主要程序代码。
“添加信息”按钮Click事件代码如下: protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection myconn = new SqlConnection("server=(local);Database=fangdawei;Uid=sa;Pwd=");
//打开链接
myconn.Open();
string str = "select count(*) from tb_BookInfo where BookName='" + TextBox1.Text.ToString() + "'";
//创建SqlCommand对象
SqlCommand com = new SqlCommand(str,myconn);
int intcont = Convert.ToInt32(com.ExecuteScalar());
if (intcont > 0)
{
Response.Write("alert('对不起!不允许填写相同记录!')");
}
else
{
try
{
SqlCommand mycom = new SqlCommand("probookinfo", myconn);
//调⽤存储过程
mycom.CommandType = CommandType.StoredProcedure;
//添加参数
SqlParameter[] prams ={
new SqlParameter("@BookName", SqlDbType.VarChar, 50),
new SqlParameter("@BookIntroduce", SqlDbType.VarChar, 50),
new SqlParameter("@BookPrice", SqlDbType.Money, 8),
new SqlParameter("@BookIsNew", SqlDbType.Char, 10),
};
//给参数赋值
prams[0].Value = TextBox1.Text;
prams[1].Value = TextBox2.Text;
prams[2].Value = Convert.ToDecimal(TextBox3.Text);
prams[3].Value = DropDownList1.SelectedValue.ToString();
foreach (SqlParameter parameter in prams)
{
mycom.Parameters.Add(parameter);
}
//执⾏sql语句
mycom.ExecuteNonQuery();
myconn.Close();
BindData();
Response.Write("alert('添加成功!')");
}
catch(Exception ex)
{
Response.Write(ex.Message.ToString());
}
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。