第七章数据库开发ppt课件.ppt
《第七章数据库开发ppt课件.ppt》由会员分享,可在线阅读,更多相关《第七章数据库开发ppt课件.ppt(122页珍藏版)》请在三一办公上搜索。
1、1,.NET 应用程序开发,数据库开发,2,ASP.NET Web开发之C#篇,第七章 数据库编程,3,内容和目标,数据库的基本操作SQL 语句.NET数据库开发数据显示数据删除数据增加数据修改数据查询数据排序,3,4,7.0 SQL Server2000 图形界面操作7.1 数据库连接7.2 数据显示控件GridView7.3 数据显示7.4 数据添加7.5 数据删除7.6 数据修改7.7 详细数据显示(超链接列)7.8 数据分页7.9 数据多选,5,Web数据库应用常见体系结构,数据库服务器,Web界面,ADO.NET,GridViewDataListRepeaterWeb服务器控件,Co
2、nnectionDataAdapterCommandDataReaderDataSet,数据库数据表关系视图帐户,浏览器,6,7.0 SQL Server2000 图形界面操作数据库的基本操作,创建库、表录入数据创建访问数据库的用户打开企业管理器安全性登录,右键新建登录,输入帐号和密码,选择数据库,给出“数据库角色”和访问权限,7,学生管理数据库xsgl,创建表tb_usertb_studentYxZyBj,8,数据库的备份和还原备份,备份:选中数据库右键所有任务备份数据库,点击“添加”,选定路径,给定文件名(备份文件的后缀名为bak)。,9,数据库的备份和还原还原,还原:选中数据库右键所有任
3、务还原数据库, 选”从设备”选择设备添加找到bak文件所在路径,确定。,10,如果出错,尝试在“还原窗口”的“选项”中,“在现有数据库上强制还原”复选框上打勾。,11,12,SQL 语句数据操纵语句,SelectInsertUpdate Delete,13,SQL 语句数据控制语句,Create table Alter tableDrop table,14,.NET程序设计的两个方面,界面代码,15,数据显示控件,GridView可以实现数据的网格显示、删除、更新、分页、排序等功能。,16,ADO.NET体系结构,17,ADO.NET的本质五种控件,ConnectionDataAdapterC
4、ommandDataReaderDataSet,18,数据库编程Connection控件,第一步:添加引用 using System.Data;using System.Data.SqlClient; 第二步:创建并打开连接在Page_Load事件中填写如下代码SqlConnection sconn = new SqlConnection(server=.;uid=sa;pwd=sa;database=xsgl);sconn.Open();此时出现错误,弹出黄色页面,如何避免?用try catch finally语句。如何捕捉数据库方面的错误?SqlException,19,参考代码,SqlC
5、onnection sconn = new SqlConnection(server=.;uid=sa;pwd=sa;database=xsgl); try sconn.Open(); Response.Write(数据库连接成功!); catch (SqlException e1) Response.Write(无法打开登录 xsgl 中请求的数据库。登录失败。用户 sa 登录失败。); finally sconn.Close(); ,20,数据库编程数据显示,第一步:添加引用 using System.Data;using System.Data.SqlClient; 第二步:添加一个Gr
6、idView控件(工具箱数据双击GridView控件)第三步:提取数据在Page_Load事件中填写如下代码string myConnectString = server=.;uid=xsgl;pwd=xsgl;database=xsgl;SqlConnection myconnection = new SqlConnection(myConnectString);myconnection.Open();SqlDataAdapter mySDAdapter = new SqlDataAdapter(select * from student, myconnection);DataSet ds
7、= new DataSet();mySDAdapter.Fill(ds, word);GridView1.DataSource = ds.Tablesword.DefaultView;GridView1.DataBind();myconnection.Close();,21,数据显示的要点,SqlConnection一条通往服务器的路。参数:string myConnectString = server=.;uid=xsgl;pwd=xsgl;database=xsgl;其中 server=. or server=localhost or server=(local) 都是指Web服务器上的S
8、ql Server。SqlDataAdapter相当于搬运工。DataSet本地的数据库。,22,数据浏览图解,数据库服务器,本地内存数据库,Connection,DataAdapter,Table1,Table2,Tb2,23,数据库编程数据显示:结果处理,结果可以看到表内的所有数据问题:如何能够使GridView的标题显示为汉字?Key:修改Select语句为:select xh 学号,xm 姓名,csrq as 出生日期 from student 如何能够使GridView的按照姓名排序?Key:修改Select语句为:select xh 学号,xm 姓名,csrq as 出生日期 fr
9、om student order by xm,24,执行Select语句的模版程序,string myConnectString = server=.;uid=xsgl;pwd=xsgl;database=xsgl;SqlConnection myconnection = new SqlConnection(myConnectString);myconnection.Open();SqlDataAdapter mySDAdapter = new SqlDataAdapter(select * from student, myconnection);DataSet ds = new DataSe
10、t();mySDAdapter.Fill(ds, word);GridView1.DataSource = ds.Tablesword.DefaultView;GridView1.DataBind();myconnection.Close();只需修改红色部分即可。,25,数据库编程数据删除,第一步:添加删除列 并 写显示数据的代码(见数据显示)第二步:获取删除行的关键字(找到对应列)第三步:构造删除数据的SQL语句(Delete)第四步:执行删除数据的SQL语句第五步:刷新界面(反映删除了记录),26,数据库编程数据删除添加删除列,添加GridView控件,Page_Load事件中写数据显示
11、代码选中GridView,智能标记(GridView右上角的黑三角),编辑列CommandField选中“删除”,“添加”按钮HeaderText属性设置为“删除”,27,运行,查看效果(这一步属于构造界面,以后是写代码),28,数据库编程数据删除获取删除行的关键字,删除行的关键字主要是行号和列号,列号是事先知道的,但行号的由用户决定的。行号的获取:选中GridView后,打开属性窗口,选“事件”(闪电图标),双击RowDeleting事件,转到代码视图。Response.Write(e.RowIndex.ToString();获取关键字:Response.Write(GridView1.Ro
12、wse.RowIndex.Cells1.Text.ToString(),29,数据库编程数据删除构造删除数据的SQL语句,string xh1=GridView1.Rowse.RowIndex.Cells1.Text.ToString(); string Sql_Delete = delete from student where xh= + xh1 + ;Response.Write(Sql_Delete );运行查看SQL 语句然后到企业管理器中去执行,30,数据库编程数据删除执行SQL 语句,SqlConnection myConnection = new SqlConnection(s
13、erver=sgq;uid=xsgl;pwd=xsgl;database=xsgl);myConnection.Open();SqlCommand myCommand = new SqlCommand(Sql_Delete, myConnection);myCommand.ExecuteNonQuery();myConnection.Close();,31,数据库编程数据删除刷新界面,string myConnectString = server=sgq;uid=xsgl;pwd=xsgl;database=xsgl;SqlConnection myconnection = new SqlCo
14、nnection(myConnectString);myconnection.Open();SqlDataAdapter mySDAdapter = new SqlDataAdapter(select xh 学号,xm 姓名,csrq as 出生日期 from student, myconnection);DataSet ds = new DataSet();mySDAdapter.Fill(ds, word);GridView1.DataSource = ds.Tablesword.DefaultView;GridView1.DataBind();myconnection.Close();,
15、32,删除确认的实现,百度gridview 删除确认第一项就可以参考设置:在删除按钮的那一列属性里面,把DeleteText属性设为 删除,33,思考题:如何实现数据的添加?提示:用TextBox输入学号,姓名等,添加按钮,且能够实时反映结果。基本思路:构造Insert语句,34,数据库编程数据添加,第零步:添加GridView,Page_Load中写显示代码第一步:添加Label、TextBox和DropDownList第二步:构造添加数据的SQL语句(Insert)第三步:执行添加数据的SQL语句第四步:刷新界面(反映增加了记录)第五步:清空全部TextBox,35,基本界面运行后界面,3
16、6,参考代码Page_Load&Browse函数,protected void Page_Load(object sender, EventArgs e) if (!Page.IsPostBack) Browse(); ,37,Browse函数,ublic void Browse() string myConnectString = server=(local);uid=xsgl;pwd=xsgl;database=xsgl; /server=. or server=localhost or server=(local) 都是指Web服务器上的Sql Server。 SqlConnection
17、 myconnection = new SqlConnection(myConnectString); myconnection.Open(); SqlDataAdapter mySDAdapter = new SqlDataAdapter(select xh 学号,xm 姓名,xb 性别,csrq 出生日期 from student, myconnection); DataSet ds = new DataSet(); mySDAdapter.Fill(ds, word); GridView1.DataSource = ds.Tablesword.DefaultView; GridView1
18、.DataBind(); myconnection.Close(); ,38,构造添加数据的SQL语句(Insert),insert 语句的框架insert into student (列名列表) values (值列表)string sql_insert = insert into student (xh,xm,xb,csrq) values (+xh1+,+xm1+,+xb1+,+csrq1+);,39,执行添加数据的SQL语句,写一个执行Delete, Insert, Update等其他语句的公共函数。public void DataAction(string sql_nonquery)
19、 SqlConnection conn = new SqlConnection(); conn.ConnectionString = server=.;uid=xsgl;pwd=xsgl;database=xsgl; conn.Open(); SqlCommand sc = new SqlCommand(sql_nonquery, conn); sc.ExecuteNonQuery(); conn.Close(); ,40,rotected void Button1_Click(object sender, EventArgs e) string xh1, xm1, xb1, csrq1; x
20、h1 = txt_xh.Text; xm1 = txt_xm.Text; xb1 = rbl_xb.Itemsrbl_xb.SelectedIndex.ToString(); csrq1 = txt_csrq.Text; string sql_insert = insert into student (xh,xm,xb,csrq) values (+xh1+,+xm1+,+xb1+,+csrq1+); /insert 语句的框架insert into student (列名列表) values (值列表) DataAction(sql_insert); /执行Insert语句 Browse()
21、; /刷新界面 ,41,可能出现的问题,直接在属性窗口中为控件配置属性直接点添加,出错,什么原因?Rbl_xb没有选中的项目。增加if语句。,42,数据库编程数据更新,第一步:添加GridView,智能标记中添加编辑列,绑定列第二步:构造编辑界面(模板列)第三步:构造修数据的SQL语句(Update)第四步:执行update语句第五步:刷新界面(反映更新了记录),43,数据库编程数据更新添加编辑列,选中GridView,智能标记(GridView右上角的黑三角),CommandField选中“编辑、更新、删除”,“添加”按钮HeaderText属性设置为“编辑”自动生成字段的复选框清空添加两个
22、BoundField字段,设置其DataField属性分别为xh、xm ;设置其HeaderText属性分别为学号、姓名运行,查看效果(此时两列均有数据绑定标识)注意:此时SQL语句为Select * from student,44,45,在Page_Load中写代码:protected void Page_Load(object sender, EventArgs e) if (!Page.IsPostBack) Browse(); ,46,系统提示RowEditing事件选中姓名转换为模板列在GridView1的RowEditing事件中写如下代码:GridView1.EditIndex
23、= e.NewEditIndex;Browse();问题:两列都有编辑框出现,学号如何避免编辑?Key:将学号的ReadOnly属性设置为true,47,RowUpdating 事件的代码protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)string xh = GridView1.Rowse.RowIndex.Cells2.Text.ToString().Trim();string xm = (TextBox)GridView1.Rowse.RowIndex.Cells3.FindCont
24、rol(TextBox11).Text.ToString().Trim();string SQL_Update = update student set xm= + xm + where xh= + xh + ;/Response.Write(SQL_Update);data_action(SQL_Update);GridView1.EditIndex = -1;Browse();,48,运行,发现程序更新后没有变,怎么回事?显示Update语句,看到没有获取到新输入的值。解决办法: if(!Page.IsPostBack) Browse();,49,数据库编程数据分页,第一步:设置GridV
25、iew允许分页第二步:设置每页的记录条数第三步:在响应事件中编程,50,数据库编程数据分页设置GridView允许分页,选中GridView,属性AllowPaging:truePageSize:2,51,数据库编程数据分页在响应事件中编程,protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) GridView1.PageIndex = e.NewPageIndex; Browse(); ,52,登录功能的实现,1、在数据库中添加表“xtyh”字段:username, passwor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第七 数据库 开发 ppt 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-1468309.html