如何通过代码连接SQL Server数据库

我们曾经为南方电网做过几个有关架空线路的科技项目,要趁着假期有整段的空闲时间,把这些代码整理一下,放入团队刚刚重构的代码库中。

由于这些项目使用的数据库为 SQL Server,所以在整理代码之前需要解决两个问题:

  1. 把以前备份的数据库文件还原。
  2. 创建连接 SQL Server 数据库的配置文件。

我在这里做个记录,等开学之后新进入LSGO软件技术团队的小伙在 Code Review 团队代码时有个参考。最起码根据步骤能够把环境配置好,让代码 Run 起来。


先解决第一个问题,备份数据的还原。

Step1:进入 SQL Server 创建一个空白数据库,我们这里创建的数据库名称为 HeYuan。

进入SQL Server

Step2:还原数据库文件,这里需要注意还原选项的配置。

还原数据库文件

此处选择 源设备 然后在相应的目录中添加需要还原的数据库文件。

选择还原的文件

特别注意,在 选项 部分勾选 覆盖现有数据库(WITH REPLACE)(O) 否则还原失败。

设置还原文件选项

Step3:查看还原之后的数据,确认是否完整。

查看数据

如果当初备份的文件没有问题,到这里,还原数据库文件就搞定了。

接着,我们解决第二个问题,通过代码连接数据库,由于 SQL Server 数据库对 sa 用户是屏蔽的,所以我们需要先对登陆的 sa 用户属性进行设置。另外 SQL Server 默认的身份验证是 Windows 模式,我们也需要将其修改为 SQL Server 和 Windows 模式。

Step1:设置 sa 用户属性。

找到sa用户

状态 中将登陆设为开启。

设置sa用户授权

常规 中设置 sa 用户的密码,在写代码连接数据库时需要用到。

设置sa用户密码

Step2:设置数据库的连接属性。

选择连接...

这里写图片描述

Step3:重启数据库服务

通过以上三个步骤,我们就可以通过代码的方式来连接 SQL Server 数据库了,否则连接失败。代码如下:

public interface ILSGOConnectionProperty
{
    string Server
    {
        get;
        set;
    }
    string Database
    {
        get;
        set;
    }
    string User
    {
        get;
        set;
    }
    string Password
    {
        get;
        set;
    }
}
    
public override bool CreateMisDbConnection(ILSGOConnectionProperty connectionProperty,ref string error)
{
    string server = connectionProperty.Server;
    string userId = connectionProperty.User;
    string password = connectionProperty.Password;
    string datatbase = connectionProperty.Database;
    string connectionString = "Initial Catalog=" + datatbase + ";Data Source=" + server + ";User Id=" + userId + ";Password=" + password + ";";
    SqlConnection pConnection = new SqlConnection(connectionString);

    try
    {
        pConnection.Open();
        return true;
    }
    catch(Exception ex)
    {
        error = ex.Message;
        return false;
    }
}

我们可以通过 WinForm,采用与用户交互的方式来构造与数据库连接的配置文件。

填写参数

连接成功

得到 XML 的配置文件如下:

<OLPlantSafeDistanceSystemVersion1.0>
  <DataSource>
    <Server>10.14.12.254</Server>
    <User>sa</User>
    <Password>5d4154</Password>
    <Database>HeYuan</Database>
    <DBType>SqlServer</DBType>
  </DataSource>
</OLPlantSafeDistanceSystemVersion1.0>

这样,在编写代码时,通过读取配置文件来确定与数据库的连接信息,当数据库发生变动时,只需要更改配置文件就好,满足软件开发的 开闭原则


最后总结一下,以往新加入的小伙伴,遇到问题之后,我们都会详细的给予解答。慢慢的,我们发现很多问题都是相同的。干脆,我就把他们常问的问题,整理出来写在这个微信号中,遇到问题,就把对应的图文转过去,或许能够提升不少大家的做事效率!

就写到这里吧!See You!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青少年编程备考

感谢您的支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值