Introduction
SQL Server LocalDB(下文简称localdb)是SQL Server的一个超级精简版本,只有几十MB,所以只有非常有限的功能。在我的简单使用过程中,它主要有两个重要的功能缺失:不支持联网,只能本机连接
数据库级别的排序规则只能是SQL_Latin1_General_CP1_CI_AS且无法更改。(看不懂没关系,下文会提到)
我的建议是,它适合只想学基础的SQL和T-SQL的同学;或用于完成只在本地运行的大作业。而对于想学好SQL Server本身的同学来说,配置服务器的网络是非常重要的环节,无法跳过不学。
详细介绍参考MS Docs:SQL Server 2016 Express LocalDBdocs.microsoft.com
Download and Install
64位系统可以使用SQL Server 2016对应的localdb,而32位系统只能用2014版。因为之后的SQL Server本身不存在32位版本了。不过如果用以下两种方式安装应该会被自动解决。以下安装方式二选一:
独立安装包:通过SQL Server的Web安装程序下载。进入官网:SQL Server 下载 | Microsoft下载Express版本的安装程序。运行后选择“下载介质”,选择LocalDB,下好了以后安装就是。
第二种方法,通过VS Installer安装:如果选了.NET负载,直接在里面勾上就行;如果没有,选到单个组件,勾上localdb,会自动勾上下一项那个依赖。
Interface
这一部分其实和localdb没有关系,也和SQL Server实例没有关系。介绍的所有软件也可以用于连接普通的SQL Server及连到别的服务器上。不过因为是面向入门,还是说一说。
以下软件安装一个或多个:SSMS:最传统的管理工具,功能最多但只支持Windows;直接下预览版就行,大小是稳定版的一半。下载 SQL Server Management Studio (SSMS)
VS Code+MSSQL扩展:跨平台,功能较为简陋。不过对于本来就用VSC的人来说会很熟悉
Azure Data Studio:在VSC基础界面上开发的,相比而言对数据库的操作特别优化,跨平台,但目前只有英文。下载并安装 Azure Data Studio
VS+SSDT:VS Installer工作负载点上“数据储存和处理”,只留“SQL Server Data Tools”
sqlcmd:传统的命令行连接工具,敢用CLI的应该不用我教吧
mssql-cli:基于python的“智能”命令行工具,在GitHub上开源,但有一段时间没有commit了,不知道会不会砍掉。dbcli/mssql-cli
其它第三方软件,我知道的有一个dbforge
如果你不确定选哪个,就选SSMS。
操作localdb实例只能使用SqlLocalDB.exe,16版在C:\Program Files\Microsoft SQL Server\130\Tools\Binn下。 如果你看不懂这句话在说什么,就不用管。
Connect
连接数据库一般需要提供地址、用户名、密码;而SQL Server提供“Windows集成验证”的登陆方式,可以不用输用户名和密码,第一次登陆需要选这个。
重点是地址,需要填:(localdb)\MSSQLLocalDB 。
这样大部分软件就可以连接成功了,但我还要说其中两个软件使用的关键点:对于VSC,新建一个文件,语言改成SQL。按F1输入connect。到验证方式时选Integrated
对于SSDT,打开VS,最上方“视图”中点开SQL Server对象管理器;也可以观看官方视频教程(不要问我为什么打不开):How to use SQL Server Data Tools in Visual Studio 2017
Collation
前文第二点缺点已经提到了,导致的最直接的结果就是直接新建数据库会存不了中文。
解决办法是对于每一个数据库手动指定排序规则:
create/alter database DBName
COLLATE Chinese_PRC_CI_AS
SQL Tutorial
不存在的。