服务器之家

服务器之家 > 正文

C#中通过使用Connection类来实现打开/关闭数据库的代码实例

时间:2022-03-03 13:46     来源/作者:Czhenya

为了访问数据库,就要提供数据库连接类,在C#中,是通过Connection类来实现的

四种类型的连接方式

  1. SQLConnection
  2. ADOConnection
  3. OractleConnection
  4. ODBCConnection

以SQLConnection方式实现数据库的连接:

  • SQL Server数据库
  • windows 身份信息验证

步骤:

  1. 引用命名空间 using System.Data.SqlClient;
  2. 将连接方法声明值字符串中
  3. 创建Connection对象
  4. 调用方法

为了节省系统资源提高系统性能,最好使用完数据库就关闭连接,在C#语言中由于GC(垃圾回收机制)的存在,会在以后的某个时刻释放资源,它是非决定性的,并不能确定这个过程在什么时候发生,当忘记关闭数据库是可以using语句确保对象退出时立即被释放,从而达到关闭数据库的作用,还有一种通过try..catch..final..语句控制连接数据库的关闭来提高性能

代码实现如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
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数据库代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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();
    }
  }
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接

原文链接:https://blog.csdn.net/Czhenya/article/details/77430214

标签:

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
返回顶部