SQL Server Express (2012) 和 LocalDB 之间有区别吗?

2024-02-20

以他的优秀和受欢迎对比图 http://erikej.blogspot.com/2011/01/comparison-of-sql-server-compact-4-and.html,ErikEJ 区分了SQL Server Express 2012, and SQL Server 2012 本地数据库。但是,我在 MSDN 文档中的其他任何地方都找不到这样的区别(“LocalDB”甚至没有提到)MS SS12 官方书籍 https://rads.stackoverflow.com/amzn/click/com/073566515X或在MSDN SQL 版本比较页面 http://msdn.microsoft.com/en-us/library/cc645993.aspx。)这让我怀疑 Express 和 LocalDB 实际上并不是 ErikEJ 所建议的两个独立的产品,而只是同一事物的两个不同术语(这可以解释为什么,这个 MSDN 页面 http://msdn.microsoft.com/en-us/library/hh510202.aspx,它被称为“SQL Server 2012表达本地数据库").

如果产品之间确实存在差异,有人可以向我指出一些比较它们的官方文档吗?


好吧,我想我已经找到了我自己问题的答案。 (它被埋在标签下SS Express 产品页面 http://www.microsoft.com/sqlserver/en/us/editions/express.aspx.)

以下是我在该页面上找到的 LocalDB 特色的摘要:

  • LocalDB 是 SQL Server Express Edition 的轻量级部署选项,先决条件更少,安装速度更快。
  • LocalDB 具有与 SQL Express 相同的所有可编程功能,但以“用户模式”* 运行应用程序和不作为服务.
  • LocalDB 不适用于多用户场景或用作服务器。 (如果您需要接受远程连接或远程管理,则需要 SQL Server Express。)
  • “Express with Tools”(包括 SS Management Studio Express、Azure 等)可以与 LocalDB 一起使用,也可以不与 LocalDB 一起使用。 (“高级服务快递”也是如此。)

UPDATE:我刚刚在中找到了这个有用的描述Windows IT 专业版(2012 年 7 月,第 23 页) http://www.windowsitpro-edition.com/windowsitpro/201207#pg23:

LocalDB 不是 SQL Server Express,也不是 SQL Server Compact。 LocalDB 使用与其他版本相同的 sqlservr.exe 引擎 SQL Server,但它以用户模式运行,而不是作为服务运行。本地数据库是 通过SSDT等工具进行离线开发,保证 您开发的代码与您的生产 100% 兼容 SQL Server 数据库。

如果我没理解错的话,LocalDB 似乎更像是 Express 的一个配置选项,而不是一个完全独立的产品。显然,如果我下载 Express(或带有工具的 Express),我将可以选择安装 LocalDB 版本,据说这比完整的 Express 更容易(“零配置”)。 (更新:使用 VS2012,默认安装 LocalDB https://learn.microsoft.com/en-us/ef/ef6/modeling/code-first/workflows/new-database#wheres-my-data.)

另一项重要的区别是,根据这个帖子 http://blogs.msdn.com/b/sqlexpress/archive/2011/11/28/using-localdb-in-visual-studio-2010.aspx,是“目前 Visual Studio 2010 不能真正与 LocalDB 配合使用”。 (我们必须使用 SS Management Studio,至少现在是这样。)

*(“用户模式”或“用户实例”的概念是 LocalDB 的一个关键区别。事实上,根据这个帖子 http://blogs.msdn.com/b/sqlexpress/archive/2011/07/12/introducing-localdb-a-better-sql-express.aspx,“LocalDB 可以看作是 SQL Server Express 用户实例功能的升级。”有关用户实例的更多信息,请参阅 MSDN 博客文章“什么是 RANU?” http://blogs.msdn.com/b/sqlexpress/archive/2008/02/22/sql-express-behaviors-idle-time-resources-usage-auto-close-and-user-instances.aspx)

更新 - 2021 年 2 月LocalDB 是 SQL Server Express 版本

来自官方文档 https://learn.microsoft.com/en-us/sql/sql-server/editions-and-components-of-sql-server-version-15?view=sql-server-ver15

Express 版是入门级免费数据库,非常适合 学习和构建数据驱动的桌面和小型服务器 应用程序。是独立软件厂商的最佳选择, 开发人员和构建客户端应用程序的爱好者。如果你需要 更高级的数据库功能,SQL Server Express可以无缝地 升级到 SQL Server 的其他更高端版本。 SQL服务器 Express LocalDB 是 Express 的轻量级版本,具有所有功能 其可编程特性,在用户模式下运行并且具有快速、 零配置安装和简短的先决条件列表。

该文档提供了版本之间功能的非常详细的比较。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL Server Express (2012) 和 LocalDB 之间有区别吗? 的相关文章

  • 在 CASE 语句中使用 CAST 时出现数据转换错误

    运行以下命令时出现错误 将数据类型 nvarchar 转换为 float 时出错 declare completeCommand nvarchar max x paramVal nvarchar 100 paramName nvarchar
  • C# 数据类型到 SQL Server 数据类型

    如何将 C 数据类型 转换 为 SQL Server 数据类型 SqlDbType是已知的 i e C gt String SQL Server gt N String 尝试这个 它是一个 Extension 类 因此您要在文件上添加以下方
  • 使用 Reporting Services 将组保持在一页上

    我使用 Reporting Services 创建了一个报表作为 C 应用程序的一部分 但我找不到一些我习惯在其他环境中看到的功能 我相信 MS Access 和 Crystal 报表都有一个名为 保持在一起 的选项 这样您就可以将特定的数
  • 如何从 C# 连接到 SQL 数据库?

    我正在尝试为我的家庭网络编写一个本地程序管理和安装系统 并且我认为我已经确定了技术 C NET WPF 客户端 Lua 用于安装脚本支持 通过 LuaInterface SQL Server Express 用于维护程序数据库 但是我不确定
  • 搜索并替换字符串 t-SQL

    每个人我都试图编写一个查询来替换末尾出现的所有字符串 我有一些干扰词 确切地说是 104 个 如果它们出现在字符串末尾 则需要将其从字符串中删除 例如 两个干扰词是 Company LLC 以下是一些示例和预期输出 American Com
  • 基于现有数据库表创建@TableVariable?

    我想在存储过程中使用表变量 但这是一个问题 我的表非常大 声明表变量也需要很长的代码来编写和调试 请告诉我一些快速声明表变量的方法 是否可以基于现有表创建表变量 或者请分享任何创建用于创建表变量的代码的提示 Thanks 右键单击表格 选择
  • SET IDENTITY_INSERT [表] ON 不起作用

    我想在指定 Id 的位置插入一些记录 以便将数据迁移到我想要保持现有关系完整性的位置 为此 我直接在 SSMS 中的表上运行以下命令 SET IDENTITY INSERT CRMTItem ON 然而 当我从 C 插入一个 Id 为 1
  • 查询不可更新

    我正在尝试使用 BE SQL Server 2012 Express 中的记录更新本地 Access 2007 表 我的步骤在这里 SQL Server中存在带有4个参数的存储过程来获取所需的记录 Access VBA中有调用SP并进行临时
  • DATEADD(day, -7, GETDATE()) - 是否考虑了时间?

    我正在通过 Amazon Redshift 在 Aginity 中编写 SQL 查询来提取过去 7 天的数据 这Date我调用的列是变量类型 DATE 输出示例如下 5 30 2017 0 00 当我调用下面的函数时 运行此查询在一天中的什
  • 根据聚合创建大小均匀的组

    可能是一个新手问题 但我希望根据数据库总大小将我们的服务器库存分成几个大小均匀的组 并且很难弄清楚如何对它们进行分组 我认为 NTILE 可能会起作用 但我就是无法将注意力集中在平均分配组上 我下面的示例只是随机订购服务器 我希望结果是大小
  • 尝试通过 knex 连接到 Mssql 服务器

    我正在尝试使用 knex 连接到远程数据库 但收到此错误 乏味已弃用默认值options encrypt将会改变自false to true 请通过false如果您想保留当前行为 请明确地表示 在node modules mssql lib
  • 如何查询最近7天的总计?

    我正在使用 SQL Server 2008 我想编写一个查询来提供给定天数的总活动量 具体来说 我想统计过去 7 天每天的总票数 我的桌子看起来像这样 VoteID VoteDate Vote BikeID 1 2012 01 01 08
  • 我如何以编程方式从数据库表生成“插入”数据脚本文件?

    有没有一个优雅的基于面向对象的框架 这是我编写的一些代码 用于为数据库中的每个表生成 插入 存储过程 它还处理返回那些具有标识列的表的新 ID 它使用 SQL SMO 其中一些内容与我的项目有些特定 因此如果您有任何疑问 请告诉我 void
  • 模拟 SQL Server 实例上的当前日期?

    是否可以更改 SQL Server 上特定数据库的日期时间 它与操作系统的日期 时间相关吗 我们希望模拟未来的日期时间以进行测试 即GETDATE 返回未来的日期 它必须处于半生产 暂存 环境中 因此不幸的是 我们无法选择更改操作系统日期
  • 出错时退出并回滚脚本中的所有内容

    我有一个 TSQL 脚本 它可以进行大量数据库结构调整 但在出现故障时让它继续执行并不真正安全 把事情说清楚 使用 MS SQL 2005 它不是一个存储过程 只是一个脚本文件 sql 我所拥有的按以下顺序排列 BEGIN TRANSACT
  • 使用 SqlBulkCopy 时提供流作为二进制列的数据源

    如果需要读取数据fromSqlServer 采用流式传输方式 有一些功能可以实现这一点 比如使用SqlDataReader with CommandBehavior SequentialAccess 特别是当需要访问二进制列数据时 有Get
  • 创建用于插入、修改和删除的数据库触发器的正确​​语法是什么

    我有一个看起来像是 SQL Server 中数据库触发器的基本场景 但我遇到了一个问题 我有桌子Users 身份证 姓名 电话等 我有桌子用户历史记录 id user id 操作 字段 时间戳 我想要一个数据库触发器 可以随时插入 更新或删
  • 单个 sql 查询可以处理 sql server 中的 null 或值日期范围

    使用 SQL Server 2008 我有一个存储过程 其中开始日期和结束日期作为日期范围的输入参数 寻找一个singlesql 查询 其中在 where 子句中有一个开始日期和结束日期 可以处理日期均为空或都有值的两种情况 我不想使用 I
  • 为什么 Excel 有时会在工作表名称中添加 $?

    我有时但并非总是发现 Excel 会放置一个 位于工作表名称末尾 但在 Excel 中看不到 只有在尝试使用 C 将其导入 SQL Server 时才可见 我遇到过很多不同的情况 它保留了原始工作表 但也创建了第二个空的 隐藏 工作表 其中
  • FindAsync 很慢,但是延迟加载很快

    在我的代码中 我曾经使用加载相关实体await FindAsync 希望我能更好地遵守 C 异步指南 var activeTemplate await exec DbContext FormTemplates FindAsync exec

随机推荐

  • 添加自定义转换类型以进行字符串格式化

    python 中是否有向字符串格式添加额外的转换类型 使用的标准转换类型 基于字符串的格式化是这样的s对于字符串 d我想要做的是添加一个新字符 我可以为其指定一个自定义处理程序 例如 lambda 函数 该处理程序将返回要插入的字符串 例如
  • 在 C# 中将列表设置为只读

    我有这个示例代码 我想要做的是使 Nums 值只能使用 AddNum 方法写入 namespace ConsoleApplication1 public class Person string myName N A int myAge 0
  • ExecutorService 超时但不阻塞主线程

    我想在有时间限制的后台执行一些工作 问题是 我不想阻塞主线程 简单的实现是有两个执行器服务 一个负责安排 超时 第二个负责完成工作 final ExecutorService backgroundExecutor Executors new
  • F# 如何捕获所有异常

    我知道如何捕获特定异常 如下例所示 let test zip archive candidate zip archive let rc try ZipFile Open candidate zip archive ToString ZipA
  • Laravel 5.8 中 Auth::user() 返回 null

    我的 Laravel 5 8 10 项目中遇到身份验证问题 我没有使用 Laravel 创建的默认表单进行身份验证 当我在浏览器中访问 URL 仪表板时 通常用户会在登录时获得重定向 无论如何 应用程序允许它 另外当我使用时Auth use
  • TYPE_E_CANTLOADLIBRARY 仅当在 Windows 2003 x64 上的单独线程上使用 COM 对象时

    我有一个访问 COM 对象的 Windows 窗体应用程序 编译为 x86 它给了我以下错误 only在 Windows 2003 x64 上 当代码在单独的线程上运行时 创建 IDoc 期间出现异常 无法将类型 PTISG COM Tek
  • 修复 ARC 中潜在的内存泄漏

    以下单例类 SharedManager 辅助方法可能会导致保留周期 在静态分析器中收到警告 在行分配的对象的潜在泄漏 我该如何修复 我确实尝试使 ivar uuid weak 但在分析时仍然出现警告 NSString weak uuid b
  • std::numeric_limits::epsilon() 可以用来做什么?

    unsigned int updateStandardStopping unsigned int numInliers unsigned int totPoints unsigned int sampleSize double max hy
  • 有没有办法阻止 contentEditable 元素在光标到达底部时滚动?

    例如 我有一个 contentEditable div 我可以在其中输入内容 当文本到达 div 底部时 浏览器会自动滚动 div 以便文本末尾和光标仍然可见 如何防止 div 滚动 以便输入的文本超出 div 的底部 从而在键入时不再看到
  • 将二维 ArrayList 复制为新的

    所以我遇到的问题是在复制二维数组列表后 更改一个二维数组列表中的元素会影响另一个二维数组列表 我希望它们在内存中完全分开 第一个示例展示了它如何正确处理一维数组列表 import java util ArrayList public cla
  • 正则表达式匹配以测试有效年份

    给定一个值 我想验证它以检查它是否是有效的年份 我的标准很简单 其中值应该是整数4人物 我知道这不是最好的解决方案 因为几年前它不允许1000并将允许诸如5000 这个标准足以满足我当前的情况 我想出的是 d 4 虽然这有效 但它也允许负值
  • 性能:使用 JCIF 将文件复制到 Windows 网络的速度非常慢

    我正在尝试将文件从本地计算机复制到 Windows 服务器中的共享文件夹 这是我使用的功能 public static void copyFileUsingJcifs final String domain final String use
  • 如何将新工具箱添加到已安装的 Matlab 版本中?

    我需要向我的 Matlab Student 版本添加一个工具箱 我知道我必须下载工具箱文件 将它们放在某个目录中 然后指定路径 但是 我不太确定必须将文件放在哪里 我下载了两个 zip 存档 Symbolic Math Toolbox Co
  • 如何在 MMT 中粘合/识别两个结构中的内含物?

    我想形式化形式语言及其语义MMT https uniformal github io 并定义一个一般概念语义等价两种语义 one句法 准确地说 对后者进行编码实际上是一种识别 粘合 我不知道如何在 MMT 中做到这一点 接下来让我详细说明我
  • IE6 将 DOCTYPE 更改为错误的 DOCTYPE

    我正在使用定义了以下内容的网站DOCTYPE 当我访问该网站时IE6 DOCTYPE神奇地变成了 而且 好吧 它可以保留 因为一切看起来都很好 但这是重点 只有一页有DOCTYPE变成
  • 如何编写使用OpenERP ORM直接上传到Postgres数据库的Python脚本

    我需要在 Python 中编写一个 独立 脚本 仅使用 OpenERP 的 ORM 模块将销售税上传到数据库中的 account tax 表 我想做的是类似下面的伪代码 有人可以向我提供有关以下内容的更多详细信息 1 我需要设置什么sys
  • ImageView 内的 Android ProgressBar

    我有一个活动通过异步任务用数据填充列表视图 另外 我正在后台加载图片 在加载图片时 我想在图像视图中显示进度条而不是默认图标 我在互联网上搜索了任何示例等 但找不到任何有用的东西 我只找到一个响应 它说您必须使用图像视图和进度条进行框架布局
  • JQuery获取formaction和formmethod

    我有一个像这样的
  • 如何在 Git 中执行三向比较而不合并?

    我想在具有公共合并基础的两个 git 分支之间执行三向差异 并使用 kdiff3 查看它 我发现了很多关于SO的指导 以及一些非常相似的问题 1 https stackoverflow com q 26301307 3380131 2 ht
  • SQL Server Express (2012) 和 LocalDB 之间有区别吗?

    以他的优秀和受欢迎对比图 http erikej blogspot com 2011 01 comparison of sql server compact 4 and html ErikEJ 区分了SQL Server Express 2