专栏首页学习有记数据库连接对象的使用

数据库连接对象的使用

连接字符串

1、连接字符串的写法

在字符串变量中,描述连接字符串所需的服务器地址、数据库名称、集成安全性(即是否使用Windows验证)

sqlConnection.ConnectionString = "Server=(Local); Database=EduBaseDemo; Integrated Security=sspi";

2、SqlConnection对象

头部添加调用,包含访问SQL Server所需的各类对象

using System.Data.SqlClient;

返回数据库连接对象,参数字符串。实例化“连接对象”,并打开连接

SqlConnection sqlConnection = new SqlConnection();  //声明并实例化SQL连接;
sqlConnection.ConnectionString =
                "Server=(Local);Database=EduBaseDemo;Integrated Security=sspi";
sqlConnection.Open();  //打开SQL连接;

使用完成后,需要关闭“连接对象”

sqlConnection.Close();  //关闭SQL连接;

3、使用MessageBox显示连接状态

MessageBox.Show                                                 
                ("连接状态:" + sqlConnection.State.ToString()                  
                + "\n工作站标识:" + sqlConnection.WorkstationId
                + "\n服务器地址:" + sqlConnection.DataSource
                + "\n服务器版本:" + sqlConnection.ServerVersion
                + "\n数据库名称:" + sqlConnection.Database
                + "\n\n(单击【确定】后将关闭SQL连接)");

### 连接字符串构造器 SqlConnectionStringBuilde

有时我们需要用参数拼连接字符串,参数一多,写起来和可读性都会繁琐很多,而使用SqlConnectionStringBuilde就会看上去清爽一些。

正常情况下写的连接字符串:

 sqlConnection.ConnectionString = "Server=(Local); Database=EduBaseDemo; Integrated Security=sspi";

使用SqlConnectionStringBuilder:

 SqlConnectionStringBuilder sqlConnectionStringBuilder = new SqlConnectionStringBuilder()    //声明并实例化SQL连接字符串构造器;
            {                                                                                           //在初始化器中,分别将各控件的内容赋予SQL连接字符串构造器的相应属性;
                DataSource = this.txb_Server.Text                                                       //数据源(即服务器);                                      
                , InitialCatalog = this.txb_Database.Text                                               //初始化条目(即数据库);
                , IntegratedSecurity = this.ckb_IsWindowsAuthentication.Checked                         //集成安全性(即是否Windows验证);
            };
            
            SqlConnection sqlConnection = new SqlConnection();
            sqlConnection.ConnectionString = sqlConnectionStringBuilder.ConnectionString;               //SQL连接字符串构造器的连接字符串属性包含了SQL连接所需的连接字符串;
            sqlConnection.Open();  //打开SQL连接;

### 配置文件 App.config

应用程序配置文件(App.config)是标准的 XML 文件,XML 标记和属性是区分大小写的。它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而不必重编译应用程序。

1、向项目添加 app.config 文件: 右击项目名称,选择“添加”→“添加新建项”,在出现的“添加新项”对话框中,选择“添加应用程序配置文件”;如果项目以前没有配置文件,则默认的文件名称为“App.config”,单击“确定”。出现在设计器视图中的App.config文件为:

<? xml version = "1.0 "encoding = "utf-8 " ?>
< configuration >
</ configuration >

2、数据库连接 App.config例子

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="Sql" 
         connectionString="Server=(local);Database=EduBaseDemo;Integrated Security=sspi"
         providerName="System.Data.SqlClient"/>
  </connectionStrings>
</configuration>

3、在窗体构造函数中键入以下代码

if (ConfigurationManager.ConnectionStrings["Sql"] != null)                                                          //若配置管理器从配置文件读取到指定的连接字符串;
            {
                SqlConnectionStringBuilder sqlConnectionStringBuilder =  new SqlConnectionStringBuilder();                      //声明并实例化SQL连接字符串构造器;
                sqlConnectionStringBuilder.ConnectionString = ConfigurationManager.ConnectionStrings["Sql"].ConnectionString;   //借助配置管理器从配置文件读取完整的连接字符串,并赋予SQL连接字符串构造器的相应属性;
                this.txb_Server.Text = sqlConnectionStringBuilder.DataSource;                                                   //从SQL连接字符串构造器各属性中,获取连接字符串的各个元素,并显示于相应控件上;
                this.txb_Database.Text = sqlConnectionStringBuilder.InitialCatalog;
                this.ckb_IsWindowsAuthentication.Checked = sqlConnectionStringBuilder.IntegratedSecurity;
            }

4、连接数据库

using System.Configuration;  

头部添加调用,包含访问配置文件所需的配置管理器

SqlConnection sqlConnection = new SqlConnection();                                                                  //声明并实例化SQL连接;
            sqlConnection.ConnectionString =
                ConfigurationManager.ConnectionStrings["Sql"].ConnectionString;                                                 //配置管理器从配置文件读取连接字符串,并将之赋予SQL连接的连接字符串属性;
            sqlConnection.Open();                                                                                               //打开SQL连接;
            sqlConnection.Close();                                                                                              //关闭SQL连接;

-----

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 数据库命令的应用

    Woodson
  • SQL Server 复制进阶:Level 1 - SQL Server 复制

    Woodson
  • T-SQL进阶:超越基础 Level 9:动态T-SQL代码

    Woodson
  • 字符串拼接,什么时候会走 StringBuilder?

    这时候,疑问就来了,为什么结果会不一致呢?利用在cmd窗口输入javap -c TestDemo.class命令,对字节码文件进行反编译,发现了问题所在?

    一个优秀的废人
  • Shell 中的中括号用法总结

    需要注意的是 [ 与 ] 与操作数之间一定要有一个空格,否则会报错。比如下面这样就会报错:

    用户1558438
  • 破解某单机游戏到学习fiddler脚本改包

    前段日子出去玩了,游山玩水的,网太差,就下了个单机耍耍。水墨风,打斗效果挺不错的(那么,请问哪里能够下载到呢?)

    Deen_
  • 可灵活配置,人性化管理,简单易用的开源工单系统

    一直想维护一个开源的项目,但是有的半途而废了,有的止步与设计,这次终于坚持下来了,毕竟有的时候工作之余还是工作啊。

    用户6784452
  • DI/FS/ETL系统中数据准确性验证的羽量级实现

    DI :数据集成,数据集成系统是为用户访问多个有效的、异构的数据源提供统一的应用系统,从而使用户真正将注意力集中在他们想要的特定结果上,而不必关心如何获得这...

    张树臣
  • Node.js基础 78:创建和删除目录、流和管道

    ls命令:查看当前目录下的文件和目录 grep:筛选,例如是否包含"app"这个关键字 ls输出一个流(输出一个信息),这个流作为了grep命令的输入

    代码之风
  • 2020-08-27:OpenStack与Docker的区别?

    openstack是个体系一个完整的方案系统 基于虚拟机 docker只是一个内核上特殊模式跑与其他系统进程隔离的进程的软件方案

    福大大架构师每日一题

扫码关注云+社区

领取腾讯云代金券