[C#]SQL Server Express LocalDb(SqlLocalDb)的一些體會

真以爲本身的知識面仍是比較窄,在此以前,竟然還不知道SqlLocalDb。sql

SqlLocalDb是啥?其實就是簡化SQL Server的本地數據庫,能夠這樣子說,SQL Server既能夠做爲遠程,也能夠作本地,數據庫

而SqlLocalDb只能做爲本地使用。說的直接一點,SqlLocalDb就是一個輕量級的基於本地的T-SQL數據庫,全稱:SQL Server Express LocalDb。express

好,廢話很少說。windows

第一,怎麼安裝這個SqlLocalDb?api

1)若是安裝過Visual Studio 201五、2017,通常已經安裝到了電腦裏。服務器

     這裏以Visual Studio 2017爲例,在Visual Studio Installer中的單個組件頁面中,能夠看到該組件已經被安裝(紅色框框部分):spa

    

2)或者到Visual Studio 2017安裝包安裝該組件:3d

     64位:code

     

    32位:server

    

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。

第2、鏈接SqlLocalDB

一、打開Visual Studio 2017,依次點擊「視圖」(菜單欄)->「服務器資源管理器」,將會打開「服務器資源管理器」窗口:

二、右鍵點擊「數據鏈接」,在彈出的上下文菜單中選擇「添加鏈接」,在彈出的窗口中將「服務器名」設置爲(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

第4、一些關於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)

相關文章
相關標籤/搜索