C#中通过使用Connection类来实现打开/关闭数据库的代码实例
为了访问数据库,就要提供数据库连接类,在C#中,是通过Connection类来实现的
四种类型的连接方式
- SQLConnection
- ADOConnection
- OractleConnection
- ODBCConnection
以SQLConnection方式实现数据库的连接:
- SQL Server数据库
- windows 身份信息验证
步骤:
- 引用命名空间 using System.Data.SqlClient;
- 将连接方法声明值字符串中
- 创建Connection对象
- 调用方法
为了节省系统资源提高系统性能,最好使用完数据库就关闭连接,在C#语言中由于GC(垃圾回收机制)的存在,会在以后的某个时刻释放资源,它是非决定性的,并不能确定这个过程在什么时候发生,当忘记关闭数据库是可以using语句确保对象退出时立即被释放,从而达到关闭数据库的作用,还有一种通过try..catch..final..
语句控制连接数据库的关闭来提高性能
代码实现如下:
using System; using System.Data.SqlClient; //引入命名空间 namespace Csharpone { class Program { static void Main(string[] args) { //windows 身份信息验证 下面的csharp01为新建的数据库名称 string constr = "Server.;integrated security=SSPI;Initial Catalog=csharp01"; SqlConnection mysqlCon = new SqlConnection(constr); //实例化 mysqlCon.Open(); //打开数据库 Console.WriteLine("数据库打开"); //正常打印说明没问题,否则会抛出异常 //SQ验证方式 name是你设置的数据库的用户名,pwd是密码 csharp02是数据库名称 string constr1 = "Server.;user=name; pwd=mima; database=csharp02"; SqlConnection mysqlCon1 = new SqlConnection(constr1); //实例化 mysqlCon1.Open(); //打开数据库 Console.WriteLine("SQL方式 数据库打开"); /*通过using语句实现数据库的关闭 using (mysqlCon1) { mysqlCon1.Open(); Console.WriteLine("数据成功打开"); //执行完立即关闭 } //通过try..catch..finally.. try { mysqlCon.Open(); Console.WriteLine("数据库关闭"); } catch { } finally { mysqlCon.Close(); Console.WriteLine("关闭数据库"); }*/ //以上两种方式结合使用,确保数据库占用资源得到释放 try { using (mysqlCon) { mysqlCon.Open(); Console.WriteLine("打开数据库"); } } catch { } finally { mysqlCon.Close(); Console.WriteLine("关闭数据库"); } Console.Read(); } } }
MySQL数据库代码如下:
using System; using MySql.Data.MySqlClient; //导入引用,并且添加命名空间 namespace CSharp连接Mysql { class Program { static void Main(string[] args) { string connectStr = "server=localhost;port=3306;database=czhenya01;user=root;password=123456;"; //并没有建立数据库连接 MySqlConnection conn = new MySqlConnection(connectStr); try { conn.Open(); //建立连接,打开数据库 Console.WriteLine("打开数据库成功"); }catch (Exception ex) { Console.WriteLine(ex.ToString()); } finally { conn.Close(); //关闭连接 } Console.ReadKey(); } } }
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接
上一篇:C#中重载重写和覆盖的定义与区别
栏 目:C#教程
下一篇:C#泛型概念的简介与泛型的使用
本文标题:C#中通过使用Connection类来实现打开/关闭数据库的代码实例
本文地址:https://www.xiuzhanwang.com/a1/C_jiaocheng/5031.html
您可能感兴趣的文章
- 01-10C#通过反射获取当前工程中所有窗体并打开的方法
- 01-10C#通过重写Panel改变边框颜色与宽度的方法
- 01-10C#实现Winform中打开网页页面的方法
- 01-10C#实现由四周向中心缩小的窗体退出特效
- 01-10Extjs4如何处理后台json数据中日期和时间
- 01-10C#通过Semaphore类控制线程队列的方法
- 01-10C#使用Dispose模式实现手动对资源的释放
- 01-10C#3.0使用EventLog类写Windows事件日志的方法
- 01-10C#中DataGridView常用操作实例小结
- 01-10C#编程获取资源文件中图片的方法
阅读排行
本栏相关
- 01-10C#通过反射获取当前工程中所有窗体并
- 01-10关于ASP网页无法打开的解决方案
- 01-10WinForm限制窗体不能移到屏幕外的方法
- 01-10WinForm绘制圆角的方法
- 01-10C#实现txt定位指定行完整实例
- 01-10WinForm实现仿视频播放器左下角滚动新
- 01-10C#停止线程的方法
- 01-10C#实现清空回收站的方法
- 01-10C#通过重写Panel改变边框颜色与宽度的
- 01-10C#实现读取注册表监控当前操作系统已
随机阅读
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-11ajax实现页面的局部加载
- 01-10delphi制作wav文件的方法
- 01-10C#中split用法实例总结
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-10SublimeText编译C开发环境设置
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 04-02jquery与jsp,用jquery