-
怎样操作SQL Server With As递归获取层级相关数据
所属栏目:[MsSql教程] 日期:2016-10-27 热度:68
副标题#e# WITH AS的含义 WITH AS短语,,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会 被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在UNION ALL的不同部分,作为提供数 据的[详细]
-
怎样设置SQL Server行使Windows体系的Large-Page allocations
所属栏目:[MsSql教程] 日期:2016-10-27 热度:185
副标题#e# 今天,一个可改变控制的实现激使我去写这篇文章,这个可改变的控制就是允许运行在Windows200864位服务器上的SQLSERVER2005企业版上 使用跟踪标志834,SQLSERVER会利用 Large-Page allocations去构建内存中的Buffer Pool。 下面是我对 Large-Page[详细]
-
SQL SERVER分发署理在BULK INSERT时产生无穷守候怎样办理
所属栏目:[MsSql教程] 日期:2016-10-27 热度:161
场景: 服务器64位,SQL SERVER 2008R2SP1,32G内存,16个CPU,sql server分配内存大约29G。 发布一张小表, 分发 代理 停止在正在将大容量复制到表xxx,该表仅有几十行数据,总量最多几百K 查询订阅服务器 分发 进程,显示bulk insert 呈suspend状态,等[详细]
-
获取sql server与年、季度、月、周首尾有关的时间函数
所属栏目:[MsSql教程] 日期:2016-10-01 热度:86
--当前日期: 2013-12-31 select convert(varchar(10), getdate(),120) --当前日期+ 时间:2013-12-31 14:36:46.860 select getdate() --一个月的第一天:2013-12-31 00:00:00.000 select dateadd(mm,datediff(mm,0,getdate()),0) --本周的星期一:201[详细]
-
SQL SERVER中Case语句的用法
所属栏目:[MsSql教程] 日期:2016-09-30 热度:178
Case具有两种格式。简单Case函数和Case搜索函数。 --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 这两种方式,可以实现相同的[详细]
-
如何解决SQL SERVER的一致性错误
所属栏目:[MsSql教程] 日期:2016-09-30 热度:143
如果DBCC CHECKDB发现了比较少的一致性错误,可以使用 DBCC UPDATEUSAGE(DatabaseName,dbo.ObjectName); 语句逐个针对表或索引中的每个分区更正行、已用页、保留页、叶级页和数据页的计数。但是如果数据库出现大量一致性错误。例如如下所示: DBCC results[详细]
-
如何使用Sqlserver 2012 Always on技术
所属栏目:[MsSql教程] 日期:2016-09-30 热度:194
副标题#e# 使用了Sqlserver 2012 Always on技术后,假如采用的配置是默认配置,会出现Primary server CPU很高的情况发生,比如默认配置如下: 需要自定义来解决这个问题。 我们先来看看上图中的这些选项的意义 主角色中的连接 允许所有连接 如果当前server[详细]
-
SQL SERVER PRINT语句如何换行
所属栏目:[MsSql教程] 日期:2016-09-30 热度:157
想在输出的PRINT语句里面换行,可以这样做 /*SQL的换行制表符 CHAR(9)换行符 CHAR(10)回车 CHAR(13)*/PRINT 'Test'+CHAR(13)+'Name'PRINT 'Test'+CHAR(10)+'Age'PRINT 'Test'+CHAR(9)+'Tel' --以文本格式显示结果SELECT 'AAA'+ CHAR(10)+'BBB'--AAA BBBSEL[详细]
-
SQL SERVER中如何手动增长日志文件和数据文件
所属栏目:[MsSql教程] 日期:2016-09-30 热度:169
手动增长日志文件,实际上就是修改日志文件的大小 size 的单位是MB 下面设置日志文件大小是2048MB ALTERDATABASE[GPOSDB] MODIFY FILE(name=GPOSDB_Log,size=2048) EXEC sys.[sp_helpdb] @dbname = [GPOSDB] -- sysname --收缩日志文件 USE [GPOSDB] GO AL[详细]
-
SQL SERVER truncate table后会不会重置表的自增值
所属栏目:[MsSql教程] 日期:2016-09-30 热度:64
今天清理业务库数据的时候,开发人员说可以使用truncate table把两个表的所有数据清理掉 这两个表都有自增ID,都做了表分区,单表200GB,使用 SELECT IDENT_CURRENT('') 的时候两个表 的当前自增值是3000012,这两个表几乎是一模一样的,除了一两个字段不[详细]
-
SQL SERVER参数化查询后不走筛选索引
所属栏目:[MsSql教程] 日期:2016-09-30 热度:137
DROP TABLE T_TESTCREATE TABLE T_TEST( ID INT IDENTITY PRIMARY KEY,STATUS BIT)INSERT INTO T_TEST SELECT 0GO 100000INSERT INTO T_TEST SELECT 1 CREATE INDEX IXF_T_TEST_STATUS ON T_TEST(STATUS) WHERE STATUS=1UPDATE STATISTICS T_TEST with ful[详细]
-
SQL SERVER分发代理在BULK INSERT时发生无限等待如何解决
所属栏目:[MsSql教程] 日期:2016-09-30 热度:58
场景: 服务器64位,SQL SERVER 2008R2SP1,32G内存,16个CPU,sql server分配内存大约29G。 发布一张小表,分发代理停止在正在将大容量复制到表xxx,该表仅有几十行数据,总量最多几百K 查询订阅服务器分发进程,显示bulk insert 呈suspend状态,等待类型[详细]
-
SQL Server管理员专用连接的使用
所属栏目:[MsSql教程] 日期:2016-09-30 热度:91
作为一名DBA,经常会处理一些比较棘手的服务无响应问题,鉴于事态的严重性,多数DBA可能直接用重启大法,以便尽快的恢复生产环境的正常运转,但是多数情况下我们却无法究其原因,即使产生了dump文件,没有微软的支持,我们同样被蒙在鼓里,幸好微软给我们[详细]
-
sql-server 2005数据库文件恢复:检测到基于一致性的逻辑 I/O错误
所属栏目:[MsSql教程] 日期:2016-09-30 热度:133
今天sql-server数据库突然报错: SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x7c781313,但实际为: 0x67a313c9)。在文件 'C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATAE_BLOCK_DB.mdf' 中、偏移量为 0x00000000a3400[详细]
-
SQL Server误区:即时文件初始化特性可以在SQL Server中 a)开启 和 b)关闭
所属栏目:[MsSql教程] 日期:2016-09-28 热度:84
误区 #3: 即时文件初始化特性可以在SQL Server中 a)开启 和 b)关闭 a)是不允许的 b)是允许的 即时文件初始化是一个在SQL Server 2005以及之上的版本鲜为人知的特性。这个特性允许数据文件(仅仅是数据文件,不包括日志文件)初始化的过程跳过填0初始化过程。[详细]
-
SQL Server误区:在服务器故障转移后,正在运行的事务继续执行
所属栏目:[MsSql教程] 日期:2016-09-28 热度:116
误区 #1:在服务器故障转移后,正在运行的事务继续执行 这当然是错误的! 每次故障转移都伴随着某种形式的恢复。但是如果当正在执行的事务没有Commit时,由于服务器或实例崩溃导致连接断开,SQL Server可没有办法在故障转移后的服务器重新建立事务的上下文[详细]
-
SQL Server日志在高可用和灾难恢复中的作用
所属栏目:[MsSql教程] 日期:2016-09-28 热度:171
副标题#e# 简介 日志的作用是保证持久性和数据一致性,通过日志可以实现数据的Undo与Redo,因此通过日志,SQL Server不仅仅可以实现灾难恢复,还可以通过日志的Redo来实现高可用性。本篇文章主要讲述日志在SQL Server中提供的几种高可用性中的作用以及在灾[详细]
-
如何使用XML向SQL Server 2005批量写入数据:关于XML时间格式
所属栏目:[MsSql教程] 日期:2016-09-28 热度:171
副标题#e# 常常遇到需要向SQL Server插入批量数据,然后在存储过程中对这些数据进行进一步处理的情况。存储过程并没有数组、列表之类的参数类型,使用XML类型可妥善解决这个问题。 不过,SQL Server2005对标准xml的支持不足,很多地方需要特别处理。举一个[详细]
-
如何解决SQL Server数据库的"User, group, or role already exists
所属栏目:[MsSql教程] 日期:2016-09-28 热度:185
问题场景 在SQL Server数据库迁移时,在另外一台服务器上恢复数据库备份文件之后,需要重新创建之前数据库上的用户帐户。在创建登录用户时,需要在User Mapping中给该用户针对具体的数据库进行授权,由于恢复出来的数据库中存在同名的用户帐户,创建时会出[详细]
-
SQL Server:使用rsync实现异地日志传送
所属栏目:[MsSql教程] 日期:2016-09-28 热度:183
微软有一个爱好叫绑定。我最痛恨的一个绑定是IIS与Windows的绑定升级IIS竟然要升级操作系统,服务器不是PC,系统不是想重装就可以重装。 在使用SQL Server日志传送进行异地备份时,又被微软的绑定策略坑了一次。日志传送只支持Windows文件共享这1种也仅此1[详细]
-
SQL Server访问Oracle查询性能问题解决
所属栏目:[MsSql教程] 日期:2016-09-28 热度:153
1. 问题 系统有个模块,需要查询Oracle数据库中的数据。目前是通过建立链接服务器实现的。 SQLServer访问Oracle实现 可参考这篇文章http://www.cnblogs.com/gnielee/archive/2010/09/07/access-oracle-from-sqlserver.html 目前的查询语句就是一个简单的带[详细]
-
如何清理SQL Server日志释放文件空间
所属栏目:[MsSql教程] 日期:2016-09-28 热度:94
【问题场景】有一个数据库,它的名字叫CNBlogsText,日志文件霸占了23G硬盘空间,而事务日志已经截断(Truncate),实际日志内容很小,1G都不到。23G的空间只放1G不到的日志,就如同用一栋别墅养一只宠物,太奢侈了!秉承中华民族勤俭节约的美德,这种奢侈[详细]
-
详解SQL Server的差异备份还原
所属栏目:[MsSql教程] 日期:2016-09-28 热度:122
在SQL Server中还原差异备份,需要先还原在差异备份时间点之前的一个完整备份,在还原完整备份时要加上NORECOVERY参数,示例SQL语句如下: RESTORE DATABASE [数据库名称] FROM DISK = N'完整备份文件路径'WITH FILE = 1, NOUNLOAD, STATS = 10, NORECOVER[详细]
-
如何导出SQL Server中的所有Job
所属栏目:[MsSql教程] 日期:2016-09-28 热度:200
应用场景: 在将源SQL Server数据库服务器中的所有Job(作业)迁移至目标数据库服务器的过程中,需要先将这些Job导出为SQL脚本。 操作步骤: 1、在Microsoft SQL Server Management Studio中,选择SQL Server Agent-Jobs,按F7打开Object Explorer Details[详细]
-
SQL SERVER存储过程语法详解
所属栏目:[MsSql教程] 日期:2016-09-28 热度:142
SQL SERVER存储过程语法: Create PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sq[详细]