-
sql-server – EXISTS(SELECT 1 …)vs EXISTS(SELECT * …)一个
所属栏目:[MsSql教程] 日期:2020-12-30 热度:182
每当我需要检查表中某些行的存在时,我倾向于总是写一个像下面这样的条件: SELECT a,b,c FROM a_table WHERE EXISTS (SELECT * -- This is what I normally write FROM another_table WHERE another_table.b = a_table.b ) 其他一些人写道: SELECT a,c FROM[详细]
-
SQL Server – 缺少NATURAL JOIN / x JOIN y USING(字段)
所属栏目:[MsSql教程] 日期:2020-12-30 热度:135
我刚刚阅读了自然连接/使用 – SQL92的功能,这些功能(遗憾的是?)缺少SQL Server当前的保留节目. 有没有人来自支持SQL Server(或其他不支持的DBMS)的DBMS – 它们听起来有用,还是一堆蠕虫(听起来也可能!)? 解决方法 我从不使用NATURAL JOIN,因为我不喜欢连[详细]
-
sql-server – 你如何在本地加载dev数据库(服务器)?
所属栏目:[MsSql教程] 日期:2020-12-30 热度:114
哇,这个标题立即给了我“你问的问题似乎是主观的,可能会被关闭.” 无论如何,经过一番搜索和阅读,我决定问一下. 来自我的问题:What are the first issues to check while optimizing an existing database?,归结为必须强调加载作为备份.bak文件接收的本地SQL[详细]
-
sql-server – 由于’XTP_CHECKPOINT’,数据库’database_name’
所属栏目:[MsSql教程] 日期:2020-12-30 热度:118
我有一个关于XTP_CHECKPOINT的问题. 我正在使用SQL Server 2014.我有一个处于SIMPLE恢复模型模式的数据库.它也在被复制. 没有公开交易.我运行DBCC OPENTRAN并返回: “No active open transactions.” 但每当我尝试创建或删除表或删除数据时,我都会收到此消息[详细]
-
sql-server – 为什么LEN()函数严重低估了SQL Server 2014中的基
所属栏目:[MsSql教程] 日期:2020-12-30 热度:95
我有一个带有字符串列的表和一个检查具有一定长度的行的谓词.在SQL Server 2014中,无论我检查的长度如何,我都会看到1行的估计值.这产生了非常糟糕的计划,因为实际上有数千甚至数百万行,SQL Server正在选择将此表放在嵌套循环的外侧. 是否有SQL Server 2014的[详细]
-
sql-server – 增量更新后统计信息消失
所属栏目:[MsSql教程] 日期:2020-12-27 热度:150
我们有一个使用增量统计信息的大型分区SQL Server数据库.所有索引都按分区对齐.当我们尝试通过分区在线重建分区时,所有统计信息在重建索引后都会消失. 下面是使用AdventureWorks2014数据库在SQL Server 2014中复制问题的脚本. --Example against AdventureWor[详细]
-
sql-server – 嵌套视图是一个很好的数据库设计吗?
所属栏目:[MsSql教程] 日期:2020-12-27 热度:182
我很久以前就读过某个地方.该书指出我们不应该允许在SQL Server中使用嵌套视图.我不确定为什么我们不能这样做或者我可能记得不正确的陈述. 学生们 SELECT studentID,first_name,last_name,SchoolID,... FROM studentsCREATE VIEW vw_eligible_studentAS SELEC[详细]
-
数据库设计 – 数据库设计:新表与新列
所属栏目:[MsSql教程] 日期:2020-12-27 热度:186
(这被建议从StackOverflow重新发布) 目前有一个表..并需要开始向其添加新的数据列. 并非每条记录(甚至在添加新数据列后继续使用新数据)都会有数据.所以我想知道这是否更适合新表,因为它实际上是某些数据行的扩展,并不适用于每一行. 换句话说,由于这些新数据元[详细]
-
sql-server – 使用LEFT JOIN或NOT EXISTS之间的最佳实践
所属栏目:[MsSql教程] 日期:2020-12-27 热度:146
使用LEFT JOIN或NOT EXISTS格式之间是否有最佳实践? 使用一个而不是另一个有什么好处? 如果没有,哪个应该是首选? SELECT *FROM tableA ALEFT JOIN tableB B ON A.idx = B.idxWHERE B.idx IS NULL SELECT *FROM tableA AWHERE NOT EXISTS(SELECT idx FROM t[详细]
-
sql-server – 如何为单个存储过程授予执行权限?
所属栏目:[MsSql教程] 日期:2020-12-27 热度:189
通常,当我创建存储过程时,我使用以下作为排序模板 Create procedure procedurename@param1 type,@param2 type,etc.. as begin procedureend 有没有办法在我使用时只包含授予执行权限的存储过程? 比如像…… Grant execute [User_Execute] …但仅适用于此存储[详细]
-
sql-server – 如何在SQL Server 2008中分配整个Active Director
所属栏目:[MsSql教程] 日期:2020-12-27 热度:192
我想在我的内部应用程序中使用集成安全性,这些应用程序都在域上.不幸的是,我从来没有能够让这个工作得很好.我想在SQL Server中为整个Exchange(Active Directory)组分配一个角色,以便对某些表进行读/写访问.这样,每当有人被雇用时我都不必创建一个操作符,或者[详细]
-
sql-server – 设置varchar(8000)有什么后果?
所属栏目:[MsSql教程] 日期:2020-12-27 热度:142
由于varchar占用的磁盘空间与字段的大小成正比,因此我们不应该总是将varchar定义为最大值,例如,SQL Server上的varchar(8000)? 在创建表上,如果我看到有人在做varchar(100)我应该告诉他们你不应该做varchar(8000)吗? 解决方法 长度是对数据的约束(如CHECK,FK[详细]
-
逻辑删除表与数据库同步和软删除方案中的已删除标志
所属栏目:[MsSql教程] 日期:2020-12-27 热度:66
我需要跟踪已删除的项目以满足客户端同步需求. 通常,最好是添加一个逻辑删除表和一个触发器来跟踪从服务器数据库中删除行的时间 – 基本上是使用已删除项目中的数据向逻辑删除表添加新行 – 或者将项目保留在原始表并将它们标记为已删除,通常使用类型为bit的[详细]
-
sql-server – 在专用数据库服务器上,为操作系统保留多少内存?
所属栏目:[MsSql教程] 日期:2020-12-27 热度:63
假设您有专门用于数据库功能的专用服务器 – 您应该为操作系统保留多少内存? 我意识到这可能会有所不同,具体取决于具体的操作系统,特定的数据库软件等.但是,由于内存对数据库性能如此重要,我希望数据库具有最大合理的内存级别,而不会使主机操作系统匮乏. 所[详细]
-
sql-server – SQLCMD命令无法插入重音符
所属栏目:[MsSql教程] 日期:2020-12-27 热度:109
我正在尝试运行sqlcmd.exe以从命令行设置新数据库.我在 Windows 7 64位上使用SQL SERVER Express 2012. 这是我使用的命令: SQLCMD -S .MSSQLSERVER08 -V 17 -E -i %~dp0aqualogyDB.sql -o %~dp0databaseCreationLog.log 这是sql文件创建脚本的一部分: CR[详细]
-
数据库设计 – SSD是否会降低数据库的实用性
所属栏目:[MsSql教程] 日期:2020-12-26 热度:155
我今天只听说过罗伯特·马丁,看起来他在软件世界中是一个值得注意的人物,所以我并不是说我的头衔看起来好像是点击诱饵或者我把话放在嘴里,但这只是我如何通过有限的经验和理解来解释我从他那里听到的内容. 我正在观看video(软件架构),Robert C. Martin的演讲,[详细]
-
数据库设计 – 实体关系问题
所属栏目:[MsSql教程] 日期:2020-12-26 热度:144
我有4个相关的表(这是一个例子): Company:IDNameCNPJDepartment:IDNameCodeID_Company Classification:IDNameCodeID_CompanyWorkers:Id NameCodeID_ClassificationID_Department 假设我有一个id = 20,id_company = 1的分类. 还有一个id_company = 2(代表另一[详细]
-
sql-server – CPU时钟速度与CPU核心数量 – 更高的GHz,或更多的
所属栏目:[MsSql教程] 日期:2020-12-26 热度:142
我们开始为VMware中的SQL Server 2016节点虚拟集群配置一组物理服务器.我们将使用企业版许可证. 我们计划设置6个节点,但是关于CPU时钟速度与CPU核心数量相关的物理服务器配置的理想方式存在一些争论. 我知道这在很大程度上取决于交易量和存储在其他软件特定因[详细]
-
sql-server – 什么是评估合理缓冲池大小的确定性方法?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:95
我试图想出一个理智的方法来理解最大服务器内存(mb)设置是否合适(要么应该更低,要么更高,或保持原样).我知道最大服务器内存(mb)应该总是足够低,以便为操作系统本身留出空间等. 我正在看的环境有几百台服务器;我需要一个可靠的公式,我可以用它来确定缓冲池的当[详细]
-
sql-server-2012 – 什么时候使用SQL Server Developer Edition
所属栏目:[MsSql教程] 日期:2020-12-26 热度:99
您是否在DEV和STAGING环境中的服务器级机器上使用SQL Server Developer Edition? 我正在开发一个大型项目(如果它通过了概念验证阶段),我们将有几个运行SQL Server 2012 Enterprise Edition的大型地理分布式企业级数据库服务器. 我们将拥有一个最初将拥有3台[详细]
-
sql-server – 从备份SQL Server还原,只是主文件组
所属栏目:[MsSql教程] 日期:2020-12-26 热度:118
值得庆幸的是,这个问题只是一个假设,我现在不是紧急情况. 但是我在我的数据库(sql server 2008)中创建了一个文件组,并将一些海量数据表移到了它上面.将我的网站中心表保留在主文件组中. 如果还原,我可以只恢复主文件组,并拥有一个可用的数据库吗?或者我是否[详细]
-
sql-server – 为什么同时使用TRUNCATE和DROP?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:69
在我工作的系统中,有许多存储过程和SQL脚本使用临时表.使用这些表后,最好放弃它们. 我的许多同事(几乎所有同事都比我更有经验)通常会这样做: TRUNCATE TABLE #mytempDROP TABLE #mytemp 我通常在脚本中使用单个DROP TABLE. 在DROP之前立即进行TRUNCATE有什么[详细]
-
sql-server – 备份master数据库的频率是多少?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:77
BOL中的建议相当含糊: Back up master as often as necessary to protect the data sufficiently for your business needs. We recommend a regular backup schedule,which you can supplement with an additional backup after a substantial update. 如果[详细]
-
sql-server-2008 – 为什么我不能使用NEWSEQUENTIALID()作为我的
所属栏目:[MsSql教程] 日期:2020-12-26 热度:66
我正在尝试在Management Studio中创建一个表,在阅读了关于新的(从SQL 2005开始) NEWSEQUENTIALID() 函数之后,我想我会试一试. 这就是我正在做的事情: 但它并没有让我失望.我得到的错误信息是: 'FormTemplate (Forms)' table - Error validating the default[详细]
-
sql-server – 在负载下插入性能增加:为什么?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:78
我有一段代码执行高度非规范化表的插入.这些表的列数为~100到300.这是在 Windows Server 2008上运行的SQL Server 2008 R2. 每个插入包括在同一事务下插入多个表.有些插入是由NHibernate批处理的,但有些不可能,但它们都在同一个事务中. 当我通过重复调用执行插[详细]