我在这使用的是老师给的数据库
1,web窗体设计。
设计添加图书窗体,窗体属性有图书种类(下拉列表框控件),图书名称,作者,编号,出版社,价格均为文本框,日期(第三方日期控件),两个按钮分别为添加和清空。
2,连接数据库。
构建连接文本strcn,通过ConfigurationManager找到配置文件,然后通过ConnectionStrings找到配置文件中的节点connectionStrings通过名为strcon找到连接文本。
创建连接对象cn,通过SqlConnection对象载入strcn。
1 string strcn = ConfigurationManager.ConnectionStrings["strcon"].ConnectionString;2 SqlConnection cn = new SqlConnection(strcn);
3,构建命令文本和命令对象。(连接成功了,就要告诉数据库该干什么事情)
构建命令文本comtext,让数据库执行添加操作,创建连接对象com,通过SqlCommand对象载入命令文本comtext和连接对象cn。
1 string comtext = "INSERT INTO BookShopOnNet.dbo.NewBook(BookTypeId,BookName,Author,ISBN,Publisher,PublishDate,Price)VALUES(@BookTypeId,@BookName,@Author,@ISBN,@Publisher,@PublishDate,@Price)";2 SqlCommand com = new SqlCommand(comtext, cn);
4,构建参数数组。
因为在传递参数时有多个参数,这时候我们就可以通过构建参数数组的方法来传递参数。通过这样的格式创建数组 int [ ] abc = new int []{1,2,3,4,5, };的格式创建数组,而我们asp中创建参数数组的类型是SqlParameter且带的是参数不是整数所以在每传一个参数时都要new一个新的SqlParameter还要将他的参数和值带进去。
1 SqlParameter[] paras = newSqlParameter[]{2 new SqlParameter("@BookTypeId",this.dpdType.Text),3 new SqlParameter("@BookName",this.txtName.Text),4 new SqlParameter("@Author",this.txtXinM.Text),5 new SqlParameter("@ISBN",this.txtID.Text),6 new SqlParameter("@Publisher",this.txtCBS.Text),7 new SqlParameter("@PublishDate",this.txtdata.Text),8 new SqlParameter("@Price",this.txtPrice.Text),9 };
完了之后还要将创建好的数组添加到 SqlCommand对象的参数集SqlParameters 中。
1 com.Parameters.AddRange(paras);
5,打开连接执行。
cn.open();为打开连接,cn.close();为关闭连接。因为打开连接的过程中可能会出错,所以要养成习惯使用try...catch....finally捕捉异常。那么我们怎么才能知道有没有添加成功呢,在这里我们要添加一个变量记录每次执行程序是受影响的行数,如果受影响的行数大于0那么就是添加成功,反之添加失败。
1 try
2 {3 cn.Open();4 int result=com.ExecuteNonQuery();5 if(result>0){6 Response.Write("");7 }8 else
9 {10 Response.Write("");11 }12 }13 catch
14 {15 Response.Write("");16 }17 finally
18 {19 cn.Close();20 }
6,清空按钮事件。
就是把每个文本框清空,每个下来列表框设为默认值。
1 this.dpdType.Text = "";2 this.txtName.Text = "";3 this.txtXinM.Text = "";4 this.txtID.Text = "";5 this.txtCBS.Text = "";6 this.txtdata.Text = "";7 this.txtPrice.Text = "";8 dpdType.Focus();//光标定位到文本框