一.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(),是完全释放资源。
现在来测试一下,连接数据库是否成功了。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; //使用ADO.NET技术,必须要导入这两个命名空间 using System.Data; using System.Data.SqlClient; // namespace ADO.NET1 { class Program { static void Main(string[] args) { //创建数据库连接(连接字符串) string sqlCon = "server=.;database=DB_MyStudentLife;uid=sa;pwd=Password_1"; SqlConnection scon = new SqlConnection(sqlCon); //打开数据库连接 scon.Open(); //测试,判断数据库的连接状态 if (scon.State == ConnectionState.Closed) { Console.WriteLine("连接数据库失败"); } if (scon.State == ConnectionState.Open) { Console.WriteLine("成功打开连接数据库,连接成功"); } Console.ReadKey(); } } }
测试效果图:
最后我们来看看SqlConnection对象的内部原理吧:使用反编译工具reflector就可以;
1.从图中,我们看出来,SqlConnection继承了DbConnection类,实现了ICloneable接口
2.ICloneable接口里面是啥样子呢,我们来看一下,反编译:
3.接下来,我们看下Dbconnection类:
从图中可以看出,Dbconnection类是一个抽象类,继承了Component类,实现了IDbConnection接口,和IDisposable接口,下面我们分别来看看这几个
4.Component类:
看得出来这个类,也实现了IDisposable接口哦,
好了,其他还是来看看IDisposable接口内部的神秘面纱吧:
看得出来,IDisosable定义了一个Dispose(),抽象无返回值的方法。
以上所述就是本文的全部内容了,希望大家能够喜欢。
ADO.NET,编程
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。