ADO.NET学习系列(一)

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: |||超大  

一.ADO.NET基础

程序和数据库交互,要通过ADO.NET进行;通过ADO.NET就能在数据库中执行SQL了。ADO.NET中提供了对不同数据库的统一操作接口(ODBC)。另外还有一种操作数据库的接口是JDBC。ADO.NET中通过SqlConnection类创建到SQL Server的链接,Sqlconnection代表一个数据库的链接,ADO.NET中的链接等资源都实现了IDisposable接口。实现了IDisposable接口的对象,在使用完了,要进行资源的释放。调用Dispose()方法。连接方式访问数据库,连接要打开,使用完要关闭。关闭之后,还可以再打开,这就是Close和Dispose的区别。Dispose(),是完全释放资源。现在来测试一下,连接数据库是否成功了。

1usingSystem;2usingSystem.Collections.Generic;3usingSystem.Linq;4usingSystem.Text;5usingSystem.Threading.Tasks;6//使用ADO.NET技术,必须要导入这两个命名空间7usingSystem.Data;8usingSystem.Data.SqlClient;9//10namespaceADO.NET111{12classPRogram13{14staticvoidMain(string[] args)15{16//创建数据库连接(连接字符串)17stringsqlCon ="server=.;database=DB_MyStudentLife;uid=sa;pwd=PassWord_1";18SqlConnection scon =newSqlConnection(sqlCon);1920//打开数据库连接21scon.Open();2223//测试,判断数据库的连接状态24if(scon.State ==ConnectionState.Closed)25{2627Console.WriteLine("连接数据库失败");28}29if(scon.State ==ConnectionState.Open)30{31Console.WriteLine("成功打开连接数据库,连接成功");32}33Console.ReadKey();34}35}36}

测试数据库连接是否成功打开,如果打开了,就提示成功,否则就提示失败

测试效果图:

最后我们来看看SqlConnection对象的内部原理吧:使用反编译工具reflector就可以;

1.从图中,我们看出来,SqlConnection继承了DbConnection类,实现了ICloneable接口

2.ICloneable接口里面是啥样子呢,我们来看一下,反编译:

3.接下来,我们看下Dbconnection类:

从图中可以看出,Dbconnection类是一个抽象类,继承了Component类,实现了IDbConnection接口,和IDisposable接口,下面我们分别来看看这几个

4.Component类:

看得出来这个类,也实现了IDisposable接口哦,

好了,其他还是来看看IDisposable接口内部的神秘面纱吧:

看得出来,IDisosable定义了一个Dispose(),抽象无返回值的方法。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航