码迷,mamicode.com
首页 > 数据库 > 详细

[C#]SQL Server Express LocalDb(SqlLocalDb)的一些体会

时间:2018-08-22 17:01:18      阅读:300      评论:0      收藏:0      [点我收藏+]

标签:init   var   nal   view   直接   alt   from   .sql   dir   

真觉得自己的知识面还是比较窄,在此之前,居然还不知道SqlLocalDb。

SqlLocalDb是啥?其实就是简化SQL Server的本地数据库,可以这样子说,SQL Server既可以作为远程,也可以做本地,

而SqlLocalDb只能作为本地使用。说的直接一点,SqlLocalDb就是一个轻量级的基于本地的T-SQL数据库,全称:SQL Server Express LocalDb。

好,废话不多说。

第一,怎么安装这个SqlLocalDb?

1)如果安装过Visual Studio 2015、2017,一般已经安装到了电脑里。

     这里以Visual Studio 2017为例,在Visual Studio Installer中的单个组件页面中,可以看到该组件已经被安装(红色框框部分):

    技术分享图片

2)或者到Visual Studio 2017安装包安装该组件:

     64位:

     技术分享图片

    32位:

    技术分享图片

3)到SQL Server下载中心下载SQL Server Express:https://download.microsoft.com/download/5/E/9/5E9B18CC-8FD5-467E-B5BF-BADE39C51F73/SQLServer2017-SSEI-Expr.exe

下载之后,打开该引用,并点击“下载介质”:

技术分享图片

在弹出的页面中,选择LocalDB(第三个),点击下一步下载SqlLocalDB.msi

技术分享图片

注:SQL Server 2016 Express LocalDB微软已经不再提供,目前为最新的,也就是以上的2017版本。

4)百度网盘下载:https://pan.baidu.com/s/12uKJ7IEE_45P0chOI4b39w

技术分享图片

技术分享图片

根据系统类型安装不同的SqlLocalDB。

第二、连接SqlLocalDB

1、打开Visual Studio 2017,依次点击“视图”(菜单栏)->“服务器资源管理器”,将会打开“服务器资源管理器”窗口:

技术分享图片

2、右键点击“数据连接”,在弹出的上下文菜单中选择“添加连接”,在弹出的窗口中将“服务器名”设置为(LocalDb)\MSSQLLocalDB,如下图所示:

技术分享图片

然后附加一个名称为MusicDBContext.mdf的数据库文件(文件可以自己定义)并点击确定,此时,MusicDBContext.数据库作为默认的数据库,我们可以选择SQLLocalDB中的其他已有数据库。

生成的连接字符串如下:

Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=C:\Users\CNC\Desktop\MusicDBContext.mdf;Initial Catalog=MusicDBContext;Integrated Security=True

我们可以将mdf文件的路径改为相对路径:

Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\MusicDBContext.mdf;Initial Catalog=MusicDBContext;Integrated Security=True

第三,编写程序对已有数据的读取

如下代码所示:

using System;
using System.Data;
using System.Data.SqlClient;
using System.Linq;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            string connectionString = @"Data Source=(LocalDb)\MSSQLLocalDB;Initial Catalog=MusicDBContext;Integrated Security=True";
            SqlConnection connection = new SqlConnection(connectionString);
            SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM Musics",connection);
            DataTable table = new DataTable();
            adapter.Fill(table);
            var result = (from row 
                          in table.Rows.Cast<DataRow>()
                          select
                          new { ID = (int)row[0], Title = (string)row[1], ReleaseDate = (DateTime)row[2] });
            result.ToList().ForEach(x => Console.WriteLine($"{x.ID},{x.Title},{x.ReleaseDate}"));
        }
    }
}

运行结果如下:

技术分享图片

  注:MusicDBContext.mdf可以在百度网盘下载,地址:https://pan.baidu.com/s/1zgkPLcetTo-XMNEH3-8FoQ

第四、一些关于SqlLocalDB的参考资料

https://docs.microsoft.com/zh-cn/sql/database-engine/configure-windows/sql-server-2016-express-localdb?view=sql-server-2017
https://docs.microsoft.com/zh-cn/sql/2014/relational-databases/express-localdb-instance-apis/command-line-management-tool-sqllocaldb-exe?view=sql-server-2017
https://docs.microsoft.com/zh-cn/sql/2014/tools/sqllocaldb-utility?view=sql-server-2017
https://technet.microsoft.com/zh-cn/hh510202(v=sql.105)

 

[C#]SQL Server Express LocalDb(SqlLocalDb)的一些体会

标签:init   var   nal   view   直接   alt   from   .sql   dir   

原文地址:https://www.cnblogs.com/cncc/p/9517721.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!