ADONET数据库访问技术.pptx
《ADONET数据库访问技术.pptx》由会员分享,可在线阅读,更多相关《ADONET数据库访问技术.pptx(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本部分重点、难点理解ADO.NET对象模型定义。掌握SqlConnection对象与Command对象。掌握DataReader、DataSet、DataTable、DataAdapter及DataView对象。掌握连接与操作Sql Server数据库的方法。掌握ADO.NET中使用XML文件的方法。第1页/共45页1.1 ADO.NET基本概念ADO.NET是.NET Framework用于访问数据的组件。ASP.NET 通过ADO.NET操作数据库。如图:ADO.NET的一个优点是可以离线操作数据库,应用程序只要在需要取得数据或更新数据的时候猜对数据源进行联机,所以可以减少应用程序对服务器
2、资源的占用,提高应用程序的效率。第2页/共45页1.2 ADO.NET对象模型.NET Framework针对不同的数据库,设计了下面四种数据提供程序:(1)SQL Server.NET Framework数据提供程序 (2)OLE DB.NET Framework数据提供程序 (3)ODBC.NET Framework数据提供程序 (4)Oracle.NET Framework数据提供程序第3页/共45页ADO.NET对象模型第4页/共45页(1)SQLConnection 建立与特定数据源的连接属性说明Data Source设置要连接的设置要连接的SQL SERVER服务器名称或服务器名称
3、或IPServerDatabase要连接的数据库要连接的数据库Initial catalogIntegrated Secrity指定是否使用信任连接指定是否使用信任连接Trusted _ ConnectionUser ID登陆数据库的账号登陆数据库的账号UidPassword登陆数据库的密码登陆数据库的密码pwdConnection Timeout连接超时连接超时第5页/共45页SQL SERVER数据库的两种连接模式1、混合模式连接使用此种连接模式必须输入登录名和登陆口令。例如:string myconnection=server=(local);database=news;uid=sa;p
4、wd=sa;SqlConnection conn=new SqlConnection(myconnection);第6页/共45页2、windows模式连接以windows连接模式必须将trusted_connection=truestring myconnection=server=(local);database=news;trusted_connection=true;SqlConnection conn=new SqlConnection(myconnection);第7页/共45页(2)Command 对数据源执行命令属性说明CommandType CommandType属性可以用来
5、指定属性可以用来指定CommandText属性中属性中的内容是的内容是SQL语句、数据表名称还是存储过程。语句、数据表名称还是存储过程。CommandType.TableDirect 数据表名称数据表名称 CommandType.Text SQL语句语句 CommandType.StoredProcedure 存储过程名称存储过程名称默认为:默认为:CommandType.TextCommandText由由CommandText属性设置,表示内容是属性设置,表示内容是SQL语句、数据表语句、数据表名称或存储过程名称或存储过程CommandTimeout指令超时时间,默认为指令超时时间,默认为3
6、0s第8页/共45页Command对象方法方法描述ExecuteReader执行执行CommandText属性所规定的操作,并创建属性所规定的操作,并创建DataReader对象对象ExecuteNonQuery执行执行CommandText属性所规定的操作,一般为属性所规定的操作,一般为update、insert、delete及其他没有返回值的及其他没有返回值的SQL命命令,返回受影响的行数。令,返回受影响的行数。ExecuteScalar执行执行CommandText属性所规定的操作,返回执行结属性所规定的操作,返回执行结果中的首行首列的值。如结果集多于一行一列,它将果中的首行首列的值。如
7、结果集多于一行一列,它将忽略其余部分。忽略其余部分。一般用于执行一般用于执行max、min、Count、sun之类的结果。之类的结果。第9页/共45页使用方法string myconnection=server=.;database=news;uid=sa;pwd=sa;SqlConnection conn=new SqlConnection(myconnection);SqlCommand cmd=new SqlCommand();cmd.CommandType=CommandType.Text;cmd.CommandText=select 新闻标题,发布日期 from News;cmd.C
8、onnection=conn;conn.Open();第10页/共45页综合实例(一)查询数据 protected void Page_Load(object sender,EventArgs e)string connection=server=.;database=news;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(connection);string command=select*from news;SqlCommand cmd=new SqlCommand(command,conn);conn.Open();SqlDa
9、taReader dr=cmd.ExecuteReader();this.GridView1.DataSource=dr;this.GridView1.DataBind();dr.Close();conn.Close();第11页/共45页(3)DataReader从数据源中读取只进且只读的数据流.当我们只需要按顺序读取数据而不需要其他操作时,可以使用DataReader对象。DataReader类是抽象类,因此不能直接实例化,而是通过执行Command对象的ExecuteReader方法返回DataReader实例。第12页/共45页(4)DataBindDataBind方法表示绑定数据第1
10、3页/共45页综合实例(2)增加数据string connection=server=.;database=news;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(connection);string command=insert into news(新闻标题,新闻内容,作者,新闻分类)values(ADO.NET基础,ADO.NET基础ADO.NET基础ADO.NET基础ADO.NET基础ADO.NET基础ADO.NET基础,WEIWEI,IT技术);SqlCommand cmd=new SqlCommand(command,c
11、onn);conn.Open();cmd.ExecuteNonQuery();conn.Close();Response.Write(alert(数据插入成功!);第14页/共45页(5)ExecuteNonQuery该方法执行Command属性中所规定增删改的SQL语句。第15页/共45页综合实例(3)修改数据protected void Page_Load(object sender,EventArgs e)string connection=server=.;database=news;uid=sa;pwd=123456;SqlConnection conn=new SqlConnect
12、ion(connection);string command=update news set 新闻标题=实例教程 where 新闻标题=基础;SqlCommand cmd=new SqlCommand(command,conn);conn.Open();cmd.ExecuteNonQuery();conn.Close();Response.Write(alert(数据修改成功!);第16页/共45页综合实例(4)删除数据 protected void Page_Load(object sender,EventArgs e)string connection=server=.;database=
13、news;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(connection);string command=delete from news where 新闻标题=实例教程;SqlCommand cmd=new SqlCommand(command,conn);conn.Open();cmd.ExecuteNonQuery();conn.Close();Response.Write(alert(数据删除成功!);第17页/共45页(6)ExecuteScalar方法ExecuteScalar方法返回执行结果中首行首列的值,该方法
14、只能执行Select语句,一般用于取得最大值(Max)、最小值(Min)、平均值(Avg)、记录数(Conut)第18页/共45页综合实例(4)ExecuteScalar方法protected void Page_Load(object sender,EventArgs e)string connection=server=.;database=news;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(connection);conn.Open();SqlCommand cmd=new SqlCommand(select count
15、(*)from news,conn);string count=cmd.ExecuteScalar().ToString();this.Label1.Text=+count+;第19页/共45页执行带参数的commandprotected void Button1_Click(object sender,EventArgs e)string connection=server=.;database=news;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(connection);SqlCommand cmd=new SqlComma
16、nd(select*from news where 新闻标题=ttitle,conn);cmd.Parameters.Add(ttitle,SqlDbType.VarChar).Value=this.TextBox1.Text;conn.Open();SqlDataReader sdr=cmd.ExecuteReader();this.GridView1.DataSource=sdr;GridView1.DataBind();sdr.Close();conn.Close();第20页/共45页(7)DataReader对象当我们需要按顺序读取数据而不需要其他操作时,可以使用DataReader
17、对象。DataReader对象一次读取一条记录,而且这些数据是只读的,并不允许做其他操作,所以使用DataReader不但节省资源而且效率很高。DataReader类是抽象的类,因此不能直接实例化,而是通过执行Command对象的ExecuteReader方法返回DataReader实例。第21页/共45页DataReader综合实例protected void Page_Load(object sender,EventArgs e)string connection=server=.;database=news;uid=sa;pwd=123456;SqlConnection conn=new
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ADONET 数据库 访问 技术
限制150内