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

22 篇文章 0 订阅
7 篇文章 0 订阅

首先需要说明的是哀差闷在装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对象资源管理器


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



   添加一个Test数据库作为演示,位置可以更改。


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

20151115191747


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

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

20151115192438


新建数据库实例

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

下面是cmd命令:

C:\Users\Myl-Cloud>cd C:\Program Files\Microsoft SQL Server\110\Tools\Binn

C:\Program Files\Microsoft SQL Server\110\Tools\Binn>SqlLocalDB.exe
下面是SqlLocalDB.exe运行后的提示信息。

Microsoft (R) SQL Server Express LocalDB 命令行工具
版本 11.0.2100.60
版权所有 (c) Microsoft Corporation。保留所有权利。

用法: SqlLocalDB 操作 [参数...]

操作:

  -?
    打印此信息

  create|c "实例名称" [版本号] [-s]
    使用指定的名称和版本创建新的 LocalDB 实例
    如果忽略 [版本号] 参数,它默认为
    SqlLocalDB 产品版本。
    -s 创建后启动新的 LocalDB 实例

  delete|d "实例名称"
    删除具有指定名称的 LocalDB 实例

  start|s "实例名称"
    启动具有指定名称的 LocalDB 实例

  stop|p "实例名称" [-i|-k]
    当前查询完成后,停止具有指定
    名称的 LocalDB 实例
    -i 使用 NOWAIT 选项请求关闭 LocalDB 实例
    -k 在不与之联系的情况下终止 LocalDB 实例进程

  share|h ["所有者 SID 或帐户"] "专用名称" "共享名称"
    使用指定的共享名称共享指定的专用实例。
    如果省略了用户 SID 或帐户名称,它将默认为当前用户。

  unshare|u "共享名称"
    停止共享指定的共享 LocalDB 实例。

  info|i
    列出当前用户所拥有的所有现有 LocalDB 实例
    以及所有共享的 LocalDB 实例。

  info|i "实例名称"
    打印有关指定的 LocalDB 实例的信息。

  versions|v
    列出在计算机上安装的所有 LocalDB 版本。

  trace|t on|off
    打开或关闭跟踪

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

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

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

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


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

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


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


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

连接数据库:

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

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

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;

namespace LocalDBConnectTest
{
    class Program
    {
        static void Main(string[] args)
        {
            //数据库连接字符串,注意这个写法(localdb)后面必须是两个斜杠,因为这中间有个转义的过程
            //Initial Catalog=要连接的数据库名
            //Intergrated Security=true  开启windows身份验证
            string ConnectString = "Server=(localdb)\\ProjectsV12;Initial Catalog=mrestaurant;Integrated Security=true"; 
            SqlConnection con = null;
            SqlCommand cmd = null;
            SqlDataReader str = null;
            try { 
                con = new SqlConnection(ConnectString);       //连接到数据库
                cmd = con.CreateCommand();
                cmd.CommandText = "select footName from dbo.footinfo"; //T-SQL语句    
                con.Open();                                  //创建连接后需要用Open打开连接,结束后要关闭连接,及时释放资源
                str = cmd.ExecuteReader();                  
                while(str.Read()){
                    Console.WriteLine(str[0]);
                    }
                }
            catch(Exception ms)
            {
                Console.WriteLine(ms.Message);
            }
            finally
            {
                str.Close();
                cmd.Clone();
                con.Close();
            }
            
        }
    }
}

原文地址: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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值