-
sql-server – SQL Server 2008R2的最佳驱动器配置
所属栏目:[MsSql教程] 日期:2020-12-26 热度:160
我有一个运行SQL Server 2008 R2的相当繁忙的数据库服务器,它具有以下设置: SATA RAID 1(2个驱动器) – OS /程序 SAS RAID 10(4个驱动器) – Sql数据库文件(数据和日志) SAS RAID 1(2个驱动器) – TempDB(数据和日志) 假设我无法在此服务器中添加其他驱动器,[详细]
-
sql-server – 增量更新后统计信息消失
所属栏目:[MsSql教程] 日期:2020-12-26 热度:157
我们有一个使用增量统计信息的大型分区SQL Server数据库.所有索引都按分区对齐.当我们尝试通过分区在线重建分区时,所有统计信息在重建索引后都会消失. 下面是使用AdventureWorks2014数据库在SQL Server 2014中复制问题的脚本. --Example against AdventureWor[详细]
-
sql-server – 嵌套视图是一个很好的数据库设计吗?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:170
我很久以前就读过某个地方.该书指出我们不应该允许在SQL Server中使用嵌套视图.我不确定为什么我们不能这样做或者我可能记得不正确的陈述. 学生们 SELECT studentID,first_name,last_name,SchoolID,... FROM studentsCREATE VIEW vw_eligible_studentAS SELEC[详细]
-
数据库设计 – 数据库设计:新表与新列
所属栏目:[MsSql教程] 日期:2020-12-26 热度:132
(这被建议从StackOverflow重新发布) 目前有一个表..并需要开始向其添加新的数据列. 并非每条记录(甚至在添加新数据列后继续使用新数据)都会有数据.所以我想知道这是否更适合新表,因为它实际上是某些数据行的扩展,并不适用于每一行. 换句话说,由于这些新数据元[详细]
-
sql-server – 使用LEFT JOIN或NOT EXISTS之间的最佳实践
所属栏目:[MsSql教程] 日期:2020-12-26 热度:181
使用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-26 热度:167
通常,当我创建存储过程时,我使用以下作为排序模板 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-26 热度:85
我想在我的内部应用程序中使用集成安全性,这些应用程序都在域上.不幸的是,我从来没有能够让这个工作得很好.我想在SQL Server中为整个Exchange(Active Directory)组分配一个角色,以便对某些表进行读/写访问.这样,每当有人被雇用时我都不必创建一个操作符,或者[详细]
-
sql-server – 设置varchar(8000)有什么后果?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:50
由于varchar占用的磁盘空间与字段的大小成正比,因此我们不应该总是将varchar定义为最大值,例如,SQL Server上的varchar(8000)? 在创建表上,如果我看到有人在做varchar(100)我应该告诉他们你不应该做varchar(8000)吗? 解决方法 长度是对数据的约束(如CHECK,FK[详细]
-
逻辑删除表与数据库同步和软删除方案中的已删除标志
所属栏目:[MsSql教程] 日期:2020-12-26 热度:183
我需要跟踪已删除的项目以满足客户端同步需求. 通常,最好是添加一个逻辑删除表和一个触发器来跟踪从服务器数据库中删除行的时间 – 基本上是使用已删除项目中的数据向逻辑删除表添加新行 – 或者将项目保留在原始表并将它们标记为已删除,通常使用类型为bit的[详细]
-
sql-server – 在专用数据库服务器上,为操作系统保留多少内存?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:190
假设您有专门用于数据库功能的专用服务器 – 您应该为操作系统保留多少内存? 我意识到这可能会有所不同,具体取决于具体的操作系统,特定的数据库软件等.但是,由于内存对数据库性能如此重要,我希望数据库具有最大合理的内存级别,而不会使主机操作系统匮乏. 所[详细]
-
sql-server – SQLCMD命令无法插入重音符
所属栏目:[MsSql教程] 日期:2020-12-26 热度:55
我正在尝试运行sqlcmd.exe以从命令行设置新数据库.我在 Windows 7 64位上使用SQL SERVER Express 2012. 这是我使用的命令: SQLCMD -S .MSSQLSERVER08 -V 17 -E -i %~dp0aqualogyDB.sql -o %~dp0databaseCreationLog.log 这是sql文件创建脚本的一部分: CR[详细]
-
sql-server – 为什么同时使用TRUNCATE和DROP?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:102
在我工作的系统中,有许多存储过程和SQL脚本使用临时表.使用这些表后,最好放弃它们. 我的许多同事(几乎所有同事都比我更有经验)通常会这样做: TRUNCATE TABLE #mytempDROP TABLE #mytemp 我通常在脚本中使用单个DROP TABLE. 在DROP之前立即进行TRUNCATE有什么[详细]
-
sql-server – 备份master数据库的频率是多少?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:181
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 热度:83
我正在尝试在Management Studio中创建一个表,在阅读了关于新的(从SQL 2005开始) NEWSEQUENTIALID() 函数之后,我想我会试一试. 这就是我正在做的事情: 但它并没有让我失望.我得到的错误信息是: 'FormTemplate (Forms)' table - Error validating the default[详细]
-
sql-server – 在负载下插入性能增加:为什么?
所属栏目:[MsSql教程] 日期:2020-12-26 热度:188
我有一段代码执行高度非规范化表的插入.这些表的列数为~100到300.这是在 Windows Server 2008上运行的SQL Server 2008 R2. 每个插入包括在同一事务下插入多个表.有些插入是由NHibernate批处理的,但有些不可能,但它们都在同一个事务中. 当我通过重复调用执行插[详细]
-
sql-server – SQL Server中的分页
所属栏目:[MsSql教程] 日期:2020-12-25 热度:131
我有一个非常大的数据库,大约100 GB.我正在执行查询: select * from table_name; 我想只显示第100到第200行. 我想了解这是如何在内部发生的.数据库是否将所有记录从磁盘提取到内存中,并向查询客户端发送回第100行到第400行?或者是否存在任何机制,以便只使用[详细]
-
sql-server – 通过数百万行的可自定义排序进行分页性能
所属栏目:[MsSql教程] 日期:2020-12-25 热度:80
在我们的应用程序中,我们有一个网格,用户可以在其中分页大量记录(1000万到2000万).网格支持在多个列(20)中按升序和降序排序.许多值也不是唯一的,因此应用程序也会将id排序为打破平局,以确保行始终显示在同一页面上.例如,如果用户想要按窗口小部件大小排序(从[详细]
-
sql-server-2005 – IIS7上对SQL Server Reporting Services 200
所属栏目:[MsSql教程] 日期:2020-12-25 热度:62
通过Reporting Services网站正确允许域用户访问报表的必要步骤是什么? 我尝试通过网站本身和Management Studio为域用户提供访问权限,但每当用户尝试访问该网站时,浏览器都会提示他们提供凭据,但他们无法登录. 我知道这应该不难做到! 更新:SSRS站点正在IIS7[详细]
-
sql-server – 与varchar(255)相比,使用varchar(5000)会不好?
所属栏目:[MsSql教程] 日期:2020-12-25 热度:106
由于varchar总是动态地分配空间,我的问题是与使用varchar(5000)相比,使用varchar(255)是否更有效或节省更多空间.如果是,为什么? 解决方法 是的,如果所有值都适合后者,则varchar(5000)可能比varchar(255)更差.原因是SQL Server将根据表中列的声明(非实际)大小[详细]
-
sql-server – 使用AlwaysOn功能的无SAN的高可用SQL Server
所属栏目:[MsSql教程] 日期:2020-12-25 热度:186
我有两个Microsoft SQL Server(v 2012),我想让它们成为镜像,当其中一个发生故障时,第二个将被替换. AlwaysOn是SQL Server 2012中的一项新功能,它被指定为高可用性解决方案.我必须说我没有SAN. 是否可以在此方案中创建高可用性?没有SAN的最佳解决方案是什么?[详细]
-
sql-server – 成功配置SQL Server进行数据库镜像后,收到错误消
所属栏目:[MsSql教程] 日期:2020-12-25 热度:126
我需要使用生产数据库的新副本替换测试环境中的旧数据库. 测试环境实际上由测试数据库的两个实例组成,在2个不同的服务器上,采用镜像配置(由于生产具有镜像,因此客户希望测试环境与生产一样,因此需要镜像). 我认为这将是一个简单的问题: 获取生产数据库的备份[详细]
-
sql-server – 在HashBytes函数中选择正确的算法
所属栏目:[MsSql教程] 日期:2020-12-25 热度:65
我们需要创建nvarchar数据的哈希值以进行比较. T-SQL中有多种哈希算法,但在这种情况下哪一种最好可供选择? 我们希望确保具有两个不同nvarchar值的重复哈希值的风险是最小的.根据我对互联网的研究,MD5似乎是最好的.是对的吗? MSDN告诉我们(链接如下)关于可用[详细]
-
数据库设计 – 数据库规范化是否已经死亡?
所属栏目:[MsSql教程] 日期:2020-12-25 热度:198
我被带到了旧学校 – 在那里我们学习了在应用程序的业务层之前设计数据库模式(或者使用OOAD来完成其他任务).我一直非常善于设计模式(恕我直言:)并规范化只是为了删除不必要的冗余,但不是它影响速度的地方,即如果连接是性能损失,冗余就留在原地.但大多数情况并[详细]
-
sql-server – SQL Server修补镜像配置
所属栏目:[MsSql教程] 日期:2020-12-25 热度:96
我们计划通过同步数据库镜像更新两个SQL服务器.这将包括配置为见证服务器的第三个环境. 对于标准的Windows补丁 – 我们应该修补/重启服务器的顺序是什么? 解决方法 订单会是这样的: 更新辅助服务器(当前未提供连接的服务器)重新启动后,执行受控镜像故障转移[详细]
-
sql-server – 使用GUI恢复数据库 – 要恢复的文件错误
所属栏目:[MsSql教程] 日期:2020-12-25 热度:78
我只是搞乱了SSMS图形界面并研究了“恢复”任务的选项. 我注意到的一件事是当我点击“生成脚本”时,查询的第一行是: RESTORE DATABASE [MyDatabase] FROM DISK = N'Server_PatchDatabase_name_LOGSHIPPING.BKP' WITH FILE = 1,NORECOVERY,NOUNLOAD,STATS =[详细]