c#开发之四
第一章 ado.net
1 ado.net架构
ado.net其实本质上是一组提供与数据库交互和操作的类库。
1、ado.net数据提供程序
数据提供程序是一组用于访问特定数据库,执行sql命令,并获取最终结果的ado.net类。Ado.net有以下几种数据库提供程序类:
(1)connectin:连接数据库
(2)command:执行sql命令和存储过程
(3)datareader:读取结果,即查询结果有很多条。
(4)dataadapter:包含以上三条命令的功能。
2、ado.net重点
(1)ado.net提供程序模型是可扩展的,即可第三方开发自定义数据提供程序。
.net4.0提供了 sqlserver提供程序,odbc提供程序,ole db提供程序,oracle提供程序(.net4.0以后不提供oralce提供程序,用oralce自已发布的odp.net提供程序)
(2)ado.net是标准化的,虽然提供了松散的模型,不同的数据类型使用不同的数据提供程序,但他们都继承于同样的接口和基类,保证了每个不同的数据提供程序以同样的方式工作并显示相同的属性和方法。所以方法名和使用方法都一样。如open(),close()等核心方法。这样可以在更换数据库后,不用重新开发程序,直接修改ado.net即可。
3、基于ado.net的类
(1)基于连接的对象:如connection,command,datareader,dataadapter类。
(2)基于内容的对象:dataset,datacolumn,datarow,datarelation类。它们完全和数据源独立。
这几种类的命令空间在system.data中。需要应用这些类的方法时,需要先导入命名空间。
如:要调用sqlserver数据库,就导入system.data.sqlclient命名空间中。
处理数据库的步骤
->连接数据库 //connectin
->初始化SQL语句
->准备Command对象
->打开连接
->执行查询
2 connection类
1、 连接字符串
Server //指定数据库服务器名和实例名
Database//指定要连接的数据库名
Uid和pwd //登录数据库服务器的帐号和密码
Integrated security=sspi //用windowsauthentication验证。
例:
stringsource=@"server=.\sqlexpress;"+"database=test;"+"uid=sa;"+"pwd=zjt71305"; //@的作用是,后面的\不作转义符,做为字符使用。,注意,引号里的分号不能少。
stringsource1=@"server=.\sqlexpress;database=test;integratedsecurity=SSPI";//也可以用这种格式。这里是用windows验证。如果是远程服务器,就要指定ip地址。
SqlConnection con=newSqlConnection(source); //新建一个sqlconnection对象,把字符串作参数初始化,就连接了数据库了。
con.Open(); //打开数据库
con.close() //关闭数据库。数据库在用的时候才开,不用就关掉,不然占用资源太大。
2、 高效的使用连接
当服务器打开,有时会忘记关闭时,会耗很多资源。
(1) try …catch….finall
try
{
Con.open()
}
Catch()
{
}
Finally
{
Con.close(); //保证在任何情况下都会关闭数据库连接。
}
(2)using //实现了disable
using (con)
{
con.Open(); //保证在任何情况下,只要退出using语句就会自动关闭数据库。
}
3 command类
三种执行命令
ExcuteNonQuery()//一般用于update,insert,delete语句的执行。返回受影响的记录数。即非查询语句执行。
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/66952.html