ADO.NET——Connection(连接数据库)
来源:互联网 发布:java swing 日期控件 编辑:程序博客网 时间:2024/06/18 07:26
在ADO.NET对象模型中,Connection对象代表了与数据源之间的连接。
.NET框架中有两个Connection对象:一个是OleDbConnection,用于大多数的数据库连接,一个是SqlConnection,是MS开发的专门用于针对SQLServer的连接。在创建Connection对象之前,你必须先引用System.Data.OleDb或者System.Data.SqlClient和System.Data三个名空间.
一,基本连接示例
对于连接对象的使用,可以类比VB中ADO的使用。现在来看一段连接的代码,来认识一下如何对数据库进行连接的。
如图,建个小界面:
然后在连接按钮的事件中加入如下代码:
string strConn = "database=Login;server=localhost;UID=sa;PWD=123456"; //连接字符串 SqlConnection conn = new SqlConnection(strConn); //建立连接 conn.Open(); //打开连接 //判断连接状态 if (conn.State == ConnectionState.Open) { lblState.Text = "连接已经打开啦~~~~"; } else { lblState.Text = "抱歉,未能连接上数据库"; } conn.Close(); //关闭连接 conn.Dispose(); //释放资源
by the way,别忘了,using ...
and then, Ctrl+F5:
二,使用高效的ADO连接
在程序运行的过程中,往往可能会出现各种错误,比如,当刚连上数据库,可能因为某种原因,系统崩溃,结果导致connection没有close,此后,如果再进行连接的话,此时就会提示连接没有关闭。为了防止这种问题,这里,我们有两种解决方法。
1,使用try...Catch...finally
将上面的程序进行改写:
string strConn = "database=Login;server=localhost;UID=sa;PWD=123456"; //链接字符串 SqlConnection conn = new SqlConnection(strConn); //建立连接 try { conn.Open(); //打开连接 } catch (SqlException error) { //此时将错误写入日志文件 MessageBox.Show("抱歉,程序发生错误"); } finally { //判断连接状态 if (conn.State == ConnectionState.Open) { lblState.Text = "连接已经打开啦~~~~"; } else { lblState.Text = "抱歉,未能连接上数据库"; } conn.Close(); //关闭连接 conn.Dispose(); //释放资源 }
2,使用using{............}
using (SqlConnection conn = new SqlConnection(strConn)) //建立连接 { conn.Open(); //打开连接 //判断连接状态 if (conn.State == ConnectionState.Open) { lblState.Text = "连接已经打开啦~~~~"; } else { lblState.Text = "抱歉,未能连接上数据库"; } }
在此处,用using来确保资源的释放。
当然,也可以这两种方法结合起来使用,用try...catch..捕捉异常,让后写入日志,用using来确保资源的释放。
0 0
- ADO.NET——Connection(连接数据库)
- ADO.NET 使用Connection对象连接数据库实现用户登录
- ADO.net打开connection连接
- ADO.NET——Connection、Command。
- ADO.NET连接数据库
- 连接数据库Ado.net
- ADO.NET连接数据库
- ADO.net连接数据库
- ado.net 连接数据库
- ado.net连接数据库
- ADO.NET连接数据库
- ADO.Net连接池(Connection Pool)
- ADO.net 1 [connection 对象/连接SQL]
- ADO基础知识:使用Connection对象连接数据库
- ADO.NET连接数据库字符串
- ADO.Net连接Infomix数据库
- ADO.NET连接数据库方法
- ado.net连接Mssqlserver数据库
- (2/3/4)-D Sqr/Rects/Cubes/Boxes?
- android http通信方式连接网络
- Servlet规范学习 - 监听器
- POJ 2007 Scrambled Polygon
- 黑马程序员------第13天笔记(两个工具类)
- ADO.NET——Connection(连接数据库)
- NYOJ243交换输出
- URL编码与解码
- JSF教程(6)——生命周期中处理请求
- C++ socket传送整形数组(一)
- Strut2之Action配置中的各项默认值
- NYOJ 23 取石子
- JSF教程(7)——生命周期之Restore View Phase
- 无向图双连通分量uva1108