VS2013自带的数据库SQL Server Express LocalDB使用介绍

时间:2021-11-20 21:49:43


原作者:http://www.icharm.me/vs2013%E8%87%AA%E5%B8%A6%E7%9A%84%E6%95%B0%E6%8D%AE%E5%BA%93sql-server-express-localdb%E4%BD%BF%E7%94%A8%E4%BB%8B%E7%BB%8D.html

哀差闷这几天在做实践周的项目,一个餐馆点餐系统,需要使用到数据库,遇到了很多的问题,百度了很久也没什么头绪。主要还是关于VS自带的数据库操作的问题。这里我来总结一下吧。

首先需要说明的是哀差闷在装VS2013的时候是全选了所有组件安装的。所以默认会自动安装一个SQL Server Express LocalDB。

SQL Server Express LocalDB简介

首先来说一下这个SQL Server Express LocalDB吧,大家应该都知道Express版是一个精简版,而LocalDB呢是SQL Server Express的一种运行模式,比较适合在开发环境使用。所以被内置在VS2013中。

在下文中我们使用SSEL来代替SQL Server Express LocalDB。

在VS中使用SSEL

1.使用SSEL新建一个数据库

视图——打开SQL Server对象资源管理器

VS2013自带的数据库SQL Server Express LocalDB使用介绍

2.展开其中一个数据库实例——右键点击数据库,选择添加新数据库

VS2013自带的数据库SQL Server Express LocalDB使用介绍

 

哀差闷添加一个Test数据库作为演示,位置可以更改。VS2013自带的数据库SQL Server Express LocalDB使用介绍

3.给新建的Test数据库添加一个Users表

VS2013自带的数据库SQL Server Express LocalDB使用介绍 VS2013自带的数据库SQL Server Express LocalDB使用介绍

4.给新建的Users表添加内容

右键新建的表名,点击查看数据:

VS2013自带的数据库SQL Server Express LocalDB使用介绍 VS2013自带的数据库SQL Server Express LocalDB使用介绍

新建数据库实例

可以看到哀差闷是在已有的数据库实例上新建数据库的,那么怎样创建一个新的实例呢,哀差闷没有在VS中找到方法,所以下面会介绍SSEL的命令行工具SqlLocalDB.exe

这个工具默认在 C:\Program Files\Microsoft SQL Server\110\Tools\Binn(哀差闷是64为系统,如果是32位的话应该是在C:\Program Files(x86)下)。SqlLocalDB.exe不能直接运行,需要使用cmd打开。

下面是cmd命令:

1 C:\Users\Myl-Cloud>cd C:\Program Files\Microsoft SQL Server\110\Tools\Binn
2  
3 C:\Program Files\Microsoft SQL Server\110\Tools\Binn>SqlLocalDB.exe

下面是SqlLocalDB.exe运行后的提示信息。

1 Microsoft (R) SQL Server Express LocalDB 命令行工具
2 版本 11.0.2100.60
3 版权所有 (c) Microsoft Corporation。保留所有权利。
4  
5 用法: SqlLocalDB 操作 [参数...]
6  
7 操作:
8  
9   -?
10     打印此信息
11  
12   create|c "实例名称" [版本号] [-s]
13     使用指定的名称和版本创建新的 LocalDB 实例
14     如果忽略 [版本号] 参数,它默认为
15     SqlLocalDB 产品版本。
16     -s 创建后启动新的 LocalDB 实例
17  
18   delete|d "实例名称"
19     删除具有指定名称的 LocalDB 实例
20  
21   start|s "实例名称"
22     启动具有指定名称的 LocalDB 实例
23  
24   stop|p "实例名称" [-i|-k]
25     当前查询完成后,停止具有指定
26     名称的 LocalDB 实例
27     -i 使用 NOWAIT 选项请求关闭 LocalDB 实例
28     -k 在不与之联系的情况下终止 LocalDB 实例进程
29  
30   share|h ["所有者 SID 或帐户"] "专用名称" "共享名称"
31     使用指定的共享名称共享指定的专用实例。
32     如果省略了用户 SID 或帐户名称,它将默认为当前用户。
33  
34   unshare|u "共享名称"
35     停止共享指定的共享 LocalDB 实例。
36  
37   info|i
38     列出当前用户所拥有的所有现有 LocalDB 实例
39     以及所有共享的 LocalDB 实例。
40  
41   info|i "实例名称"
42     打印有关指定的 LocalDB 实例的信息。
43  
44   versions|v
45     列出在计算机上安装的所有 LocalDB 版本。
46  
47   trace|t on|off
48     打开或关闭跟踪

可以看到操作命令必须以 SqlLocalDB 开头。
下面演示新建数据库实例的命令

1 SqlLocalDB create newshili
2  
3 C:\Program Files\Microsoft SQL Server\110\Tools\Binn>SqlLocalDB create newshili
4 已使用版本 11.0 创建 LocalDB 实例“newshili”。

其他命令类似,这里不多介绍了。

之前哀差闷一直不会用VS自带的这个LocalDB数据库,所以自己也下载了SQL Server Management Studio 2014进行安装,但是安装完成打开SQL Server Management Studio后,提示连接,在服务器名称——浏览更多,并没有在本地找到任何SQl服务。网上搜也没明白个所以然,我估计是因为VS在本机已经装了个LocalDB的数据库服务的原因,具体的也不清楚,微软的东西太庞大。出现在网上搜不到的问题也不奇怪。

VS2013自带的数据库SQL Server Express LocalDB使用介绍

 

那我这个Management Studio岂不是白装了?其实不然,我们可以用它来管理我们的LocalDB的数据库实例!!

上面的命令行工具里,使用查看实例详细信息的命令SqlLocalDB info ProjectsV12

VS2013自带的数据库SQL Server Express LocalDB使用介绍

把最下面的一行实例管道名称; 复制粘贴到SQL Server Management Studio的连接对话框的服务器名称中:

VS2013自带的数据库SQL Server Express LocalDB使用介绍

点击连接即可管理ProjectsV12实例了。

连接数据库:

连接数据库很简单吧,使用Ado.Net就行了,之前哀差闷一直想在WinApp里面连接SQL Server,事实证明这是不能实现的。所以不多说了,

想要连接这个LocalDB,先引入System.Data.SqlClient;命名空间(若提示找不到,那可能是你没有装ADO.NET Framework),废话不多说了,直接看代码,下面代码的实现的是将查询到的数据打印出来的功能

1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Threading.Tasks;
6 using System.Data.SqlClient;
7  
8 namespace LocalDBConnectTest
9 {
10     class Program
11     {
12         static void Main(string[] args)
13         {
14             //数据库连接字符串,注意这个写法(localdb)后面必须是两个斜杠,因为这中间有个转义的过程
15             //Initial Catalog=要连接的数据库名
16             //Intergrated Security=true  开启windows身份验证
17             string ConnectString = "Server=(localdb)\\ProjectsV12;Initial Catalog=mrestaurant;Integrated Security=true";
18             SqlConnection con = null;
19             SqlCommand cmd = null;
20             SqlDataReader str = null;
21             try {
22                 con = new SqlConnection(ConnectString);       //连接到数据库
23                 cmd = con.CreateCommand();
24                 cmd.CommandText = "select footName from dbo.footinfo"; //T-SQL语句   
25                 con.Open();                                  //创建连接后需要用Open打开连接,结束后要关闭连接,及时释放资源
26                 str = cmd.ExecuteReader();                 
27                 while(str.Read()){
28                     Console.WriteLine(str[0]);
29                     }
30                 }
31             catch(Exception ms)
32             {
33                 Console.WriteLine(ms.Message);
34             }
35             finally
36             {
37                 str.Close();
38                 cmd.Clone();
39                 con.Close();
40             }
41              
42         }
43     }
44 }

VS2013自带的数据库SQL Server Express LocalDB使用介绍

这里哀差闷提供一套ADO.Net 4的视频资料,感觉挺好的,分享给大家,也为了以后自己不用到处找资料吧 链接:http://pan.baidu.com/s/1jGvYQXo 密码:8jbd 完整版的资料可以到这里下载 ADO.NET 4.0从入门到精通视频课程