作者:tina田小甜Shirley | 来源:互联网 | 2024-11-25 20:36
本文详细介绍了SQLServerExpressLocalDB,这是一种轻量级的本地T-SQL数据库解决方案,特别适合开发环境使用。文章还探讨了LocalDB与其他轻量级数据库的对比,并提供了安装和连接LocalDB的步骤。
概述
SQL Server Express LocalDB 是一种轻量级的本地数据库引擎,专为开发环境设计,支持 T-SQL 语言。LocalDB 可以作为 SQL Server 的一个简化版本,但仅限于本地使用,不支持网络连接。
一、SQL Server Express LocalDB 简介
1. 基本概念
全称:SQL Server Express LocalDB
LocalDB 是 SQL Server Express 的一个轻量级版本,主要面向开发者,提供了一个简单、快速的本地数据库环境。它不需要复杂的安装过程,可以随应用程序一起分发。
2. 与 SQL Server Express 的比较
虽然 LocalDB 不能完全替代 SQL Server Express,但它为开发者提供了另一种选择,并保持了与 SQL Server Express 的高度兼容性。以下是 LocalDB 与其他轻量级数据库的对比:
3. 与 SQL Server Compact 的区别
SQL Server Compact 是另一种轻量级数据库,主要用于嵌入式应用。以下是它们之间的主要区别:
- 运行模式:SQL Server Compact 是一个进程内的 DLL,而 LocalDB 则作为一个独立的进程运行。
- 磁盘占用:SQL Server Compact 的体积约为 4MB,而 LocalDB 安装后的体积约为 250MB。
- 功能特性:SQL Server Compact 仅提供 RDBMS 的核心功能,而 LocalDB 支持更多高级功能,如存储过程、几何和地理数据类型。
二、安装 SQL Server Express LocalDB
1. 通过 Visual Studio 安装
Visual Studio 在安装过程中会自动安装 SQL Server Express LocalDB。如果你选择了 .NET 开发负载,LocalDB 会自动包含在内。如果没有,可以在“单个组件”中手动选择 LocalDB 及其依赖项。
2. 单独安装 SQL Server Express LocalDB
你也可以从 Microsoft 官方网站单独下载 SQL Server Express LocalDB。访问 SQL Server 下载页面,选择 SQL Server 2019 Express 版本进行下载。下载完成后,按照提示安装 LocalDB。
三、连接 SQL Server Express LocalDB
使用 Windows 身份验证连接 LocalDB 非常简单。在 SQL Server Management Studio (SSMS) 中,选择“数据库引擎”作为服务器类型,并使用以下实例名进行连接:
- SQL Server 2012 LocalDB 实例名:(localdb)\v11.0
- SQL Server 2019 LocalDB 实例名:(localdb)\MSSQLLocalDB
1. 使用 SSMS 连接 LocalDB
在 SSMS 中,输入上述实例名并使用 Windows 身份验证进行连接。如果遇到排序规则问题,可以通过以下命令手动指定排序规则:
CREATE DATABASE dbname COLLATE Chinese_PRC_CI_AS;
2. 在 Visual Studio 中连接 LocalDB
在 Visual Studio 中,通过“服务器资源管理器”添加新的数据连接。将服务器名设置为 (localdb)\MSSQLLocalDB,并选择或附加所需的数据库文件。生成的连接字符串示例如下:
data source=(localdb)\MSSQLLocalDB;attachdbfilename=|DataDirectory|musicdbcontext.mdf;initial catalog=musicdbcontext;integrated security=true
3. 编写程序读取 LocalDB 数据
以下是一个简单的 C# 示例,演示如何从 LocalDB 中读取数据:
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";
using (SqlConnection cOnnection= new SqlConnection(connectionString))
{
connection.Open();
SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM Musics", connection);
DataTable table = new DataTable();
adapter.Fill(table);
var result = from row in table.Rows.Cast()
select new { Id = (int)row[0], Title = (string)row[1], ReleaseDate = (DateTime)row[2] };
foreach (var x in result)
{
Console.WriteLine($"{x.Id}, {x.Title}, {x.ReleaseDate}");
}
}
}
}
}
四、示例数据库下载
Microsoft 提供了一些常用的示例数据库,可以帮助开发者更好地理解和测试 LocalDB。以下是一些推荐的示例数据库: