如何通过代码连接SQL Server数据库
我们曾经为南方电网做过几个有关架空线路的科技项目,要趁着假期有整段的空闲时间,把这些代码整理一下,放入团队刚刚重构的代码库中。
由于这些项目使用的数据库为 SQL Server,所以在整理代码之前需要解决两个问题:
- 把以前备份的数据库文件还原。
- 创建连接 SQL Server 数据库的配置文件。
我在这里做个记录,等开学之后新进入LSGO软件技术团队的小伙在 Code Review 团队代码时有个参考。最起码根据步骤能够把环境配置好,让代码 Run 起来。
先解决第一个问题,备份数据的还原。
Step1:进入 SQL Server 创建一个空白数据库,我们这里创建的数据库名称为 HeYuan。
Step2:还原数据库文件,这里需要注意还原选项的配置。
此处选择 源设备
然后在相应的目录中添加需要还原的数据库文件。
特别注意,在 选项
部分勾选 覆盖现有数据库(WITH REPLACE)(O)
否则还原失败。
Step3:查看还原之后的数据,确认是否完整。
如果当初备份的文件没有问题,到这里,还原数据库文件就搞定了。
接着,我们解决第二个问题,通过代码连接数据库,由于 SQL Server 数据库对 sa 用户是屏蔽的,所以我们需要先对登陆的 sa 用户属性进行设置。另外 SQL Server 默认的身份验证是 Windows 模式,我们也需要将其修改为 SQL Server 和 Windows 模式。
Step1:设置 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!
相关文章:

选择一个稳定、快速的服务器四大注意事项
要想运营好一个网站,稳定和高速的服务器是必不可少的。可是在选择的时候企业就会很发愁,不知道该考虑哪些因素,不知道该怎么选择,下面我们简单的了解一下如何选择一个稳定性好、快速的服务器。 第一 性能要稳定 为了保证网站能够正…

APP不同上线情况对应的测试流程
一个App软件从研发提测到版本上线都会经过哪些测试流程呢?很多人认为就是进行功能测试,没bug了就提交审核,审核通过就直接上线了,其实不然,有些步骤是需要特别关注的,否则极易造成线上bug,本文千锋教育小编…

iOS 进阶—— iOS内存管理
1 似乎每个人在学习 iOS 过程中都考虑过的问题 alloc retain release delloc 做了什么?autoreleasepool 是怎样实现的?__unsafe_unretained 是什么?Block 是怎样实现的什么时候会引起循环引用,什么时候不会引起循环引用?所以我将在本篇博文中详细的从 ARC 解释到…

Google工作原理
今天在晚上看到一个图,讲解google的工作原理,感觉写的不错。贴过来方便以后深入的研究。 转载于:https://www.cnblogs.com/muyuge/archive/2010/07/06/6152590.html
如何利用ArcGis修改shp数据字段名称
最近在处理一批地理信息数据,其中涉及到对shp文件属性字段的修改,在这里做个记录,以防大家再走弯路。 工具: Arcgis软件shp文件 第1步:打开ArcCatalog,选择左上角的链接文件夹,选择你存放数据…

学java为什么要报java培训班?
学java为什么要报java培训班?对于没有基础的小白来说,选择报java培训班是最合适不过的,自学是没有任何规划的,学到的技术都是模棱两可,工作入职后是存在很大风险的,具体的来看看下面的详细介绍吧。 学java为什么要报j…

Tensorflow 全网最全学习资料汇总之框架平台的综合对比【3】
作为机器学习领域、尤其是 Python 生态圈最受欢迎的框架平台,TensorFlow 具有许多吸引开发者的优点。其中最显而易见的是谷歌的技术支持和完善的社区(庞大用户群)。这些都为 TensorFlow 的普及打下了基础。但是,开发者需要了解 Te…

空间两点间的距离
空间两点间的距离公式推导,有图有真相 转载于:https://www.cnblogs.com/graphics/archive/2010/07/08/1773966.html
如何利用ArcGis把经纬度转成shp数据
这段时间在处理一批地理信息数据,由于部分数据是经纬度坐标,如下图所示: 这样,面对的第一个问题,就是把这批数据转换成shp格式。下面做一个记录,与大家分享。 工具: ArcGIS 软件 Step1&#x…

新手参加java培训都学什么
互联网的强大使得很多IT技术变得越来越吃香,java技术就是其中的一种,很多人都开始学习java技术,下面小编就为大家分享一些新手参加java培训都学什么?希望能够给零基础的学员带来一些帮助。 新手参加java培训都学什么? 1、对于新手学习java的…

第三百三十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—深度优先与广度优先原理...
第三百三十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—深度优先与广度优先原理 网站树形结构 深度优先 是从左到右深度进行爬取的,以深度为准则从左到右的执行(递归方式实现)Scrapy默认是深度优先的 广度优先 是以层级来执行的…

读懂ConnectString 中 enlist 设置的含义
因为上次遇到在webservice中处理事务的问题,偶然在调试程序的时候对OracleConnection的连接字符串enlist设置的一个有趣的发现。以前看过一篇文章,不记得是什么文章了,文章中说对enlist最好设置为false,当时也没有怎么去深究为什么…

你知道这些 985、211 院校的隶属吗?
前段时间为准备继续深造计算机方向的同学们整理了一些资料,包括: 全国第四轮学科评估结果 – 计算机科学与技术全国第四轮学科评估结果 – 软件工程你知道大陆地区的985、211院校都有哪些吗?你真的知道「专业硕士」与「学术硕士」的11个区别…

新手UI设计师必需要掌握的知识和技能
近几年,许多企业对于UI设计师这个岗位的需求量越来越大,UI设计师的发展空间可见越来越好,想要学好UI设计,必须要掌握足够的知识和技能,下面小编就为大家分享一下新手UI设计师必需要掌握的知识和技能,希望能…
SharePoint 2010中的客户端AJAX应用——ASP.NET AJAX模板
WCF Data Services是SharePoint 2010中一个极具吸引力的新特性。然而,因为它的强大,直接对其进行编程仍然会有点痛苦。幸运的是,一个新的相关技术 —— ASP.Net AJAX模板 – 可以完美的与WCF Data Service进行集成,并允许我们快速…

如何利用Gephi可视化浏览的网站关系
Gephi 是进行数据可视化的一套开源工具。其利用图(有向图、无向图、动态图等)的形式来展现数据,方便我们对数据进行探索。今天给大家介绍利用 Gephi 来可视化我们浏览网站之间关系。 首先,安装 Gephi 的 Http 代理插件 HttpGraph…

nginx 启动脚本
#vim /etc/rc.d/init.d/nginx #为nginx提供SysV init脚本#!/bin/sh## nginx - this script starts and stops the nginx daemon## chkconfig: - 85 15 # description: Nginx is an HTTP(S) server, HTTP(S) reverse \# proxy and IMAP/POP3 proxy server# …

参加前端培训主要学习什么语言
web前端近几年很多人都在学习中,但是想要学好web前端技术,基础是非常重要的,参加web前端培训机构可以进行系统的学习,下面就给大家详细的介绍一下参加前端培训主要学习什么语言? 参加前端培训主要学习什么语言?前端的基础就是HT…
嘿,程序员,你该学点经济学了!
前言: 笔者一直认为,一个好的程序员。不仅仅是代码敲得好,其它方面的知识和能力相同非常重要。特别是随着年龄的增长。非常多人也慢慢的往管理层发展。这个时候沟通与协调能力变得更加重要,而一些策划。推广方面的知识也相同是必不…

记录一次自己调试代码的过程
今年年初我们做了一套防窃电的软件,其中通讯采取的是串口方式。前段时间,根据现场的反馈,我们增加了蓝牙通讯的功能。系统界面如下图所示: 今天,现场人员反馈说:“解析的数据出现问题”,所以我在…

CBitmapButton的使用(转)
CBitmapButton的使用 CBitmapButton作为MFC的控件类,并不为很多人所使用,因为现在网上遍布着从CButton派生的各种各样的按钮类,其中最为著名的就是CButtonST类了。但是最近在CSDN上看到几个问题都是使用CBitmapButton类,但是由于…

web前端干货:详细了解JS前端开发框架都有哪些
1. Foundation框架 Foundation框架总体来看要比Bootstrap略显高大上一点,但他们俩的设计理念都是非常清楚的,Bootstrap有引导的意思,尝试处理你项目中的一切所需。Foundation有基础、地基及支柱的意思,给项目中强有力的创造与支持…

Platform Builder 5下WinCE 5.0目录结构
Platform Builder 5下WinCE 5.0目录结构 Platform Builder 5已经自带WinCE 5.0,安装过程会指定WinCE 5.0的安装路径,默认为X:\WINCE500,WINCE500即为WinCE 5.0的根目录。根目录下主要有以下几个目录:PUBLIC, PLATFORM, PRIVATE, P…

记录一次自己清理数据的过程
今天接到一个任务,从原始数据(在不同监测点对白纹伊蚊,18周的监测数据)中提取监测点列表,然后从网上爬取各个监测点的空间信息(经纬度),并把这些经纬度数据转换成墨卡托坐标…

man nfsd(rpc.nfsd中文手册)
本人译作集合:http://www.cnblogs.com/f-ck-need-u/p/7048359.html rpc.nfsd(8) System Managers Manual rpc.nfsd(8)NAMErpc.nfsd - NFS服务进程SYNOPSIS/usr/sbin/rpc.nfsd [options] nprocDESCRIPTIONrpc.nfsd程序…

Java学习从入门到精通的学习建议
想要学好java技术,首先打好基础很重要,不论学什么基础都是重中之重,学习Java更是如此。如:基础语法、核心类库、面向对象编程、异常、集合、IO流等基础如果学不好,那么后边更深入的语法也不容易学会。所以在学基础部分…

Automatically highlight current page in menu via Javascript
Please check the link, http://www.richnetapps.com/automatically_highlight_current_page_in/ 转载于:https://www.cnblogs.com/OceanChen/archive/2010/08/10/1796410.html

基于Vue的小日历(支持按周切换)
基于Vue的日历小功能,可根据实际开发情况按每年、每月、每周、进行切换 <template><div class"date"><!-- 年份 月份 --><div class"month"><p>{{ currentYear }}年{{ currentMonth }}月</p></div>&…

股市币市:数据分析与交易所公告(20190225)
沪深300 1. 沪深300分位数数据 2. 沪深300股指图 3. 沪深300分位数图 4. 沪深300筹码分布图 数据来源: https://finance.sina.com.cn/stock/ BTC比特币 1. 比特币分位数数据 2. 比特币交易图 3. 比特币分位数图 4. 比特币筹码分布图 数据来源: htt…

哪些人适合参加UI设计培训
UI设计在最近几年受到了很多人的关注,想要学习UI设计技术的人越来越多,大部分选择报UI设计培训班进行学习,有些人想要通过自学来学,那么到底哪些人适合参加UI设计培训呢?来看看下面的详细介绍。 哪些人适合参加UI设计培训? 1. 零…