ASPNET数据库基本操作.ppt
《ASPNET数据库基本操作.ppt》由会员分享,可在线阅读,更多相关《ASPNET数据库基本操作.ppt(57页珍藏版)》请在三一办公上搜索。
1、第6章 ADO.NET数据库编程,6,内容提要,本章首先介绍ADO.NET的结构。详细介绍ADO.NET的Connection对象,Command对象、DataReader对象、DataAdapter对象和DataSet对象。介绍常用的数据源控件和数据绑定控件。,网络数据库编程基础,在.NET框架中,包含了自己的数据访问技术ADO.NET。ADO.NET的名称起源于ADO(ActiveX Data Objects)。ADO.NET包含一组托管的类使得Web应用程序可以连接数据源、执行命令以及管理非连接的数据。ASP.NET同样使用服务器控件来进行数据处理。ASP.NET中提供两类数据控件。一类
2、是数据源(Data Source)控件。另一类是数据绑定(Data-bound)控件。,6.1 ADO.NET的结构,ADO.NET有两个核心组件:.NET数据提供程序和DataSet。,.NET数据提供程序,表6-1.NET数据提供程序的四个核心对象,SQL Server.NET 数据提供程序,对应SQL Server.NET的4个核心对象分别是:SqlConnection、SqlCommand、SqlDataReader和SqlDataAdapter。这4个对象包含在命名空间中,需要将这个命名空间引入到文件中。SQL Server.NET数据提供程序对SQL Server数据库的底层操作进
3、行了封装,可以更加快捷地访问SQL Server数据库。,OLE DB.NET 数据提供程序,对应OLE DB.NET的4个核心对象分别是:OleDbConnection、OleDbCommand、OleDbDataReader和OleDbDataAdapter。这4个对象包含在命名空间中,需要将这个命名空间引入到文件中。目前主要用来访问Access、Foxpro等简单的数据源。,Oracle DB.NET数据提供程序,对应Oracle DB.NET的4个核心对象分别是:OracleConnection、OracleCommand、OracleDataReader和OracleDataAdap
4、ter。这4个对象包含在命名空间中,需要将这个命名空间引入到文件中。,ODBC.NET数据提供程序,对应ODBC.NET的4个核心对象分别是:OdbcConnection、OdbcCommand、OdbcDataReader和OdbcDataAdapter。这4个对象包含在命名空间中,需要将这个命名空间引入到文件中。通过ODBC建立的数据源都可以通过ODBC.NET数据提供程序访问。,DataSet对象简介,DataSet是ADO.NET的核心组件,内部用XML描述数据,具有平台无关性。DataSet 包含一个或多个 DataTable对象的集合,这些对象由数据行和数据列以及 DataTabl
5、e 对象中数据的主键、外键、约束和关系信息等组成。DataSet通过DataAdapter对象从数据源得到数据,DataAdapter是连接DataSet和数据库的一个桥梁,因此命名为:“数据适配器”。,Connection对象,用于建立数据库连接,常用方法有Open()和Close()。Data Source属性用来获取数据源的服务器名或文件名;Provider属性用来指定数据库驱动程序;ConnectionString属性用来指定连接字符串。,案例名称:使用Connection对象 程序名称:6-01.aspxvoid Page_Load(Object sender,EventArgs e
6、)OleDbConnection Conn=new OleDbConnection();Conn.ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;+Data Source=+Server.MapPath(person.mdb);Conn.Open();Message.Text=Conn.State.ToString();Conn.Close();,使用Connection对象的构造函数,案例名称:使用Connection对象的构造函数程序名称:6-02.aspxvoid Page_Load(Object sender,EventArgs e)
7、OleDbConnection Conn;Conn=new OleDbConnection(Provider=Microsoft.Jet.OLEDB.4.0;+Data Source=+Server.MapPath(person.mdb);Conn.Open();Message.Text=Conn.State.ToString();Conn.Close();,连接SQL Server数据库的常用参数,使用Connection对象连接SQL Server数据库,案例名称:使用Connection对象连接SQL Server数据库程序名称:6-03.aspxvoid Page_Load(Objec
8、t sender,EventArgs e)SqlConnection Conn;Conn=new SqlConnection(server=localhost;database=testdb;uid=sa;pwd=);/SQL Server身份验证/Conn=new SqlConnection(Data Source=ZXG;Integrated Security=true;Initial Catalog=testdb;);/Windows身份验证 Conn.Open();Message.Text=Conn.State.ToString();Conn.Close();,Command对象,建立
9、数据连接以后,利用Command对象来执行命令并从数据源返回结果。常用方法:ExecuteReader()、ExecuteScalar()和ExecuteNonQuery()。Command对象常用的构造函数包括两个参数,1个是要执行的SQL语句,另一个是已经建立的Connnection对象,基本语法是:OleDbCommand Comm=new OleDbCommand(select*from grade,Conn);,ExecuteReader方法,主要用来执行基本SQL查询语句,要求SQL返回记录集。,案例名称:使用ExecuteRader方法程序名称:6-04.aspxvoid Pag
10、e_Load(Object sender,EventArgs e)OleDbConnection Conn=new OleDbConnection();Conn.ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;+Data Source=+Server.MapPath(person.mdb);Conn.Open();OleDbCommand Comm=new OleDbCommand(select*from grade,Conn);OleDbDataReader dr=Comm.ExecuteReader();dg.DataSource=dr;
11、dg.DataBind();Conn.Close();,案例名称:使用Like子句实现模糊查询程序名称:6-05.aspx void submit_click(Object sender,EventArgs e)OleDbConnection Conn=new OleDbConnection();Conn.ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;+Data Source=+Server.MapPath(person.mdb);Conn.Open();string sql=select*from grade;if(mytext.Text
12、!=)sql=select*from grade where 姓名 like%+mytext.Text+%;Message.Text=sql;OleDbCommand Comm=new OleDbCommand(sql,Conn);OleDbDataReader dr=Comm.ExecuteReader();dg.DataSource=dr;dg.DataBind();Conn.Close();请输入被查询的人名关键字,ExecuteScalar方法,该方法返回单个值,从相关的查询中返回第一行和第一列的值(Object 类型),一般用来执行聚合函数。,案例名称:使用ExecuteScalar
13、方法程序名称:6-06.aspxvoid Page_Load(Object sender,EventArgs e)OleDbConnection Conn=new OleDbConnection();Conn.ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;+Data Source=+Server.MapPath(person.mdb);Conn.Open();String strSQL=select avg(数学)from grade;OleDbCommand Comm=new OleDbCommand(strSQL,Conn);Doubl
14、e d=(Double)Comm.ExecuteScalar();Message.Text=所有人数学的平均成绩为+d.ToString()+分;Conn.Close();,ExecuteNonQuery方法,用于执行不需要返回结果的命令,并返回受影响的行数。,案例名称:使用ExecuteNonQuery方法执行Insert语句程序名称:6-07.aspxvoid Page_Load(Object sender,EventArgs e)OleDbConnection Conn=new OleDbConnection();Conn.ConnectionString=Provider=Micros
15、oft.Jet.OLEDB.4.0;+Data Source=+Server.MapPath(person.mdb);Conn.Open();String strSQL=insert into grade(学号,姓名,数学)+values(99,小张,100);OleDbCommand Comm=new OleDbCommand(strSQL,Conn);Comm.ExecuteNonQuery();Conn.Close();Response.Write(操作成功!);,ADO.NET事务处理,事务是一些事件的集合,执行一条SQL语句可理解成一个事件。ADO.NET使用Connection对象
16、的BeginTransaction()方法来声明事务开始,利用Transaction对象的Commit()方法来提交事务,利用Transaction对象的Rollback()方法来回滚事务。,使用事务的基本格式,案例名称:使用事务的基本格式 程序名称:6-08.aspxvoid Page_Load(Object sender,EventArgs e)OleDbConnection Conn=new OleDbConnection();Conn.ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;+Data Source=+Server.MapPa
17、th(person.mdb);Conn.Open();OleDbCommand Comm=new OleDbCommand();OleDbTransaction Trans;Trans=Conn.BeginTransaction();Comm.Connection=Conn;Comm.Transaction=Trans;try Comm.CommandText=UPDATE grade SET 数学=100 WHERE 姓名 LIKE%周%;Comm.ExecuteNonQuery();Comm.CommandText=UPDATE grade SET 数学=60 WHERE 姓名 LIKE%
18、张%;Comm.ExecuteNonQuery();Trans.Commit();Response.Write(事务执行成功!);catch(Exception ex)Trans.Rollback();Response.Write(出现错误,事务已经回滚!);finally Conn.Close();,DataReader对象,取DataReader对象的数据,有两种方法:1、通过和GridView等数据控件绑定,直接输出,使用方法如程序6-04.aspx。2、另一种方法是利用循环将其数据取出。,使用DataReader对象输出数据,案例名称:使用DataReader对象输出数据程序名称:6-
19、09.aspxprotected void Page_Load(object sender,EventArgs e)OleDbConnection Conn=new OleDbConnection(Provider=Microsoft.Jet.OLEDB.4.0;+Data Source=+Server.MapPath(person.mdb);Conn.Open();String strSQL=select*from grade;OleDbCommand Comm=new OleDbCommand(strSQL,Conn);OleDbDataReader dr=Comm.ExecuteRead
20、er();string html=;html+=;html+=学号;html+=姓名;html+=数学;html+=;try while(dr.Read()/读出每一条记录 html+=;html+=+dr学号.ToString()+;html+=+dr姓名.ToString()+;html+=+dr数学.ToString()+;html+=;html+=;catch(Exception ex)Response.Write(ex.Message);finally dr.Close();Conn.Close();/关闭链接 Response.Write(html);,DataAdapter对象,
21、DataAdapter对象用于从数据源中获取数据,填充DataSet 中的表和约束,并将对DataSet的更改提交回数据源。DataAdapter对象有4个重要属性,即SelectCommand、InsertCommand、UpdateCommand、DeleteCommand,都是Command对象,其中SelectCommand用来执行查询,其他三个用于执行数据操作。除了SelectCommand属性,其他三个属性都需使用“ExecuteNonQuery()”方法调用。,使用DataAdapter对象的构造方法,案例名称:使用DataAdapter对象构造方法程序名称:6-10.aspxp
22、rotected void Page_Load(Object sender,EventArgs e)OleDbConnection Conn=new OleDbConnection(Provider=Microsoft.Jet.OLEDB.4.0;+Data Source=+Server.MapPath(person.mdb);string sql=select*from grade;Conn.Open();OleDbDataAdapter da=new OleDbDataAdapter(sql,Conn);/执行SQL DataSet ds=new DataSet();da.Fill(ds,
23、grade);/将da对象中的数据填充到ds对象中,并起别名“grade”dg.DataSource=ds.Tablesgrade.DefaultView;dg.DataBind();Conn.Close();,使用DataAdapter对象的SelectCommand属性,案例名称:使用DataAdapter对象的SelectCommand属性程序名称:6-11.aspxvoid Page_Load(Object Src,EventArgs E)OleDbConnection Conn=new OleDbConnection(Provider=Microsoft.Jet.OLEDB.4.0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ASPNET 数据库 基本 操作
链接地址:https://www.31ppt.com/p-5415886.html