• SQL Server LocalDB 入门


    题图:Azure Data Studio for SQL Server

    Introduction

    SQL Server LocalDB(下文简称localdb)是SQL Server的一个超级精简版本,只有几十MB,所以只有非常有限的功能。在我的简单使用过程中,它主要有两个重要的功能缺失:

    • 不支持联网,只能本机连接
    • 数据库级别的排序规则只能是SQL_Latin1_General_CP1_CI_AS且无法更改。(看不懂没关系,下文会提到)

    我的建议是,它适合只想学基础的SQL和T-SQL的同学;或用于完成只在本地运行的大作业。而对于想学好SQL Server本身的同学来说,配置服务器的网络是非常重要的环节,无法跳过不学。

    详细介绍参考MS Docs:

    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

    不存在的。

    出处:https://zhuanlan.zhihu.com/p/53088056

    =======================================================================================

    LocalDB介绍 

    LocalDb是SqlServer Express版本的轻量级版本,用于植入到visual studio应用程序中去。
    调试程序没有安装 sql server时,可以使用localdb.这是一个简易的sql server数据库,用于本地测试是很方便,省去安装SQL SERVER的工作。

    LocalDB数据库实例查找

    安装好LocalDB后,默认有个实例名注意vs2015前默认实例名“v11.0”,之后为“mssqllocaldb”
    查看LocalDB实例存放的位置%Localappdata%\Microsoft\Microsoft SQL Server Local DB\Instances,其下的每个文件加都是一个LocalDB实例,
    如mssqllocaldb文件夹下主要包含:系统数据文档(master、model、msdb、tempdb)、错误记录、记录追踪、加密密钥等
    注意这里不包含用户数据库
    用户数据可以放在任意位置,如果在创建时为指定路径默认创建在%userprofile%目录下

    连接LocalDB

    LocalDB连接的服务器名称为(localdb)\实例名称,可以使用sql server的“windows 身份验证”连接服务。
    在.net网站下设置web.config的connectionstring可为:
    Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\EShop.mdf;Integrated Security=SSPI;"
    注意最好指明AttachDbFilename,如果指明Initial Catalog(数据库名称)则创建的数据库在%userprofile%目录下增加麻烦

    管理LocalDB

    通过SqlLocalDB.exe管理LocalDB;可以在cmd下通过where sqllocaldb.exe搜索路径

    命令作用
    sqllocaldb.exe start 实例名 启动数据库实例
    sqllocaldb.exe info 实例名 查询数据库实例信息
    sqllocaldb.exe stop 实例名 关闭数据库实例
    sqllocaldb.exe create 实例名 创建数据库实例
    sqllocaldb.exe info 列出所有数据库实例
    sqllocaldb.exe delete 实例名 删除数据库实例

    出处:https://www.cnblogs.com/LoveTomato/p/9838210.html

    =======================================================================================

    LocalDB的介绍

    关于LocalDB的介绍

    类似于sqlite (但是sqlite是不支持存储过程的,而LocalDB则支持存储过程)

    导读:LocalDB是SQL Server 2012带来的新特性,它是一个专门为开发人员量身定制的轻量级数据库。本文将为您讲解LocalDB的开发背景,展示其核心特性,并看看它与微软的其它轻量级数据库到底有何不同。

    什么是LocalDB

    随着SQL Server 2012的发布,LocalDB跃入我们的视线,它可以被看做是SQL Server Express的轻量级版本。

    LocalDB专门为开发人员创建,它非常易于安装,几乎无需管理,兼容T-SQL语言,编程接口与SQL Server Express别无二致。

    有了LocalDB,开发人员就不需要在自己的笔记本上安装和维护一个庞大的SQL Server实例了。另外,LocalDB也适用于小型应用环境,开发人员可以将其用于小型生产环境或者嵌入式环境。

    为开发人员量身定制

    我们在关注LocalDB的技术细节之前,首先来了解一下构建LocalDB的背景。

    一直以来,SQL Server Express满足了我们两方面的需求。它既是免费版的SQL Server,又具有足够强大的功能,与其它版本相兼容。当然,它的能力也存在一些限制,即它的每个数据库的存储容量不能超过10G。

    SQL Server作为一个成熟的数据库产品,其Express版本依然具有相当的复杂度。但作为开发人员,我们更希望降低管理复杂度,专注于开发。

    LocalDB的开发目标由此形成,它是轻量级的SQL Server Express,为开发人员量身定制。

    核心技术特性

    说了这么多,现在让我们来看看LocalDB的核心技术特性:

    • 兼容其它SQL Server版本,使用sqlservr.exe作为服务进程,使用相同的客户端访问接口(如ADO.NET、ODBC或PDO),兼容T-SQL编程语言。
    • 在同一台计算机上不必安装多个LocalDB,不同的应用程序可以并行执行多个LocalDB进程,但所有的进程都是从同一个可执行文件(sqlservr.exe)启动的。
    • LocalDB不会创建任何系统服务,LocalDB进程会根据需要自动启动、停止。应用程序只需连接“Data Source=(localdb)\v11.0”,LocalDB就会作为应用程序的子进程启动。随着连接的终止,LocalDB进程也会随之停止。
    • LocalDB支持AttachDbFileName属性,允许开发者指定数据库文件位置。例如:
    1. Data Source = (localdb)\v11.0; 
    2. Integrated Security = true; 
    3. AttachDbFileName = C:\MyData\Database1.mdf

    轻量级数据库对比(LocalDB vs. SQL Express vs. Compact)

    LocalDB并不能完全替代SQL Server Express,它只是对开发人员提供了另外一种选择,并保证与SQL Server Express一致的兼容性。

    LocalDB与SQL Server Compact之间有很大区别:

    运行模式:SQL Server Compact是一个进程内(in-proc)DLL,LocalDB则作为独立进程运行。

    磁盘占用:SQL Server Compact的体积仅有4MB,LocalDB安装之后则有140MB。

    功能特性:SQL Server Compact仅提供RDBMS的核心功能,而LocalDB则提供更丰富的功能,比如存储过程、几何和地理数据类型。

    最后的思考

    LocalDB作为一个功能丰富的轻量级数据库,绝对值得我们去尝试。接下来,我们也许会思考,LocalDB是否提供了良好的管理接口?答案是肯定的。

    LocalDB提供了一个命令行管理工具SqlLocalDB.exe。下次,就让我们一起来探讨如何使用命令行实用工具SqlLocalDB.exe和SQL Server Management Studio(SSMS)管理LocalDB。(张志平/编译)

    原文链接:Introducing LocalDB, an improved SQL Express

    下载链接:SQL Server 2012 Express & LocalDB

    LocalDB并不是要取代SQL快捷版,而是要让开发者能够花费最少的精力来开发应用程序。微软会继续为用户提供免费的SQL Server快捷版,他们可以在上面运行小型的评估项目,数据库大小的限制为10GB

    Sql Server Management Studio(SSMS) 连接 LocalDB的方法

    如果实例没启动,在CMD中输入

    sqllocaldb s #启动实例

    默认使用 Windows身份认证 登录

    出处:https://blog.csdn.net/carcarrot/article/details/107020427

    =======================================================================================

  • 相关阅读:
    机器学习项目实战----信用卡欺诈检测(二)
    机器学习项目实战----信用卡欺诈检测(一)
    机器学习之使用Python完成逻辑回归
    逻辑回归算法
    机器学习之梯度下降
    线性回归算法原理推导
    Spark之RDD容错原理及四大核心要点
    Spark之RDD依赖关系及DAG逻辑视图
    Spark之RDD弹性特性
    Spark之RDD的定义及五大特性
  • 原文地址:https://www.cnblogs.com/mq0036/p/16089433.html
Copyright © 2020-2023  润新知