-
Sql Server中怎样执行多条语句并返回Select查询后的姑且表
所属栏目:[MsSql教程] 日期:2016-10-30 热度:114
SET ANSI_NULLS ONGO SET QUOTED_IDENTIFIER ONGO -- ============================================= CREATE FUNCTION csj_csj(@id as int) RETURNS @temp table --这里返回一个自己创建的表,里面的字段根据自己的需要设 ( [id] int, [zd] varchar(100),[详细]
-
Sql Server 2008 R2占用内存一向增添到死锁的题目
所属栏目:[MsSql教程] 日期:2016-10-30 热度:159
最近有一客户服务器, 内存 小点, 内存 占用 很高,经查是sql server 问题 ,只能重启Sql服务器来清理内存,后来,试一方法,解决: 进入Sql server 企业管理器(管理数据库和表的,这个都不知道就不用往下看了),在数据库服务器名称上点击【右键】,选[详细]
-
Sql_Server中怎样判定表中某列是否存在
所属栏目:[MsSql教程] 日期:2016-10-30 热度:100
/*判断表AA中是否存在AA_ID这一列,如果不存在,则新增*/ IF NOT EXISTS (SELECT 1 FROM syscolumns INNER JOIN sysobjects ON sysobjects.id = syscolumns.id WHERE syscolumns.name = 'AA_ID' AND sysobjects.name = 'AA') ALTER TABLE AA ADD AA_ID VAR[详细]
-
行使Internals Viewer插件查察SQL SERVER内部数据页面
所属栏目:[MsSql教程] 日期:2016-10-30 热度:193
副标题#e# 感觉internals viewer这个名字起得很好,内部查看。 这个小工具是我之前看园子里的某大侠转载的文章是看到的 文章地址: SQL Server2008存储结构之堆表、行溢出 http://www.cnblogs.com/trams/archive/2010/09/11/1823727.html 这几天研究了一下[详细]
-
SQL SERVER中Case语句的用法
所属栏目:[MsSql教程] 日期:2016-10-09 热度:68
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-10-09 热度:138
如果DBCC CHECKDB发现了比较少的一致性错误,可以使用 DBCC UPDATEUSAGE(DatabaseName,dbo.ObjectName); 语句逐个针对表或索引中的每个分区更正行、已用页、保留页、叶级页和数据页的计数。但是如果数据库出现大量一致性错误。例如如下所示: DBCC results[详细]
-
如何使用Sqlserver 2012 Always on技术
所属栏目:[MsSql教程] 日期:2016-10-09 热度:57
副标题#e# 使用了Sqlserver 2012 Always on技术后,假如采用的配置是默认配置,会出现Primary server CPU很高的情况发生,比如默认配置如下: 需要自定义来解决这个问题。 我们先来看看上图中的这些选项的意义 主角色中的连接 允许所有连接 如果当前server[详细]
-
SQL SERVER PRINT语句如何换行
所属栏目:[MsSql教程] 日期:2016-10-09 热度:144
想在输出的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-10-09 热度:73
手动增长日志文件,实际上就是修改日志文件的大小 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-10-09 热度:89
今天清理业务库数据的时候,开发人员说可以使用truncate table把两个表的所有数据清理掉 这两个表都有自增ID,都做了表分区,单表200GB,使用 SELECT IDENT_CURRENT('') 的时候两个表 的当前自增值是3000012,这两个表几乎是一模一样的,除了一两个字段不[详细]
-
SQL SERVER参数化查询后不走筛选索引
所属栏目:[MsSql教程] 日期:2016-10-09 热度:95
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-10-09 热度:54
场景: 服务器64位,SQL SERVER 2008R2SP1,32G内存,16个CPU,sql server分配内存大约29G。 发布一张小表,分发代理停止在正在将大容量复制到表xxx,该表仅有几十行数据,总量最多几百K 查询订阅服务器分发进程,显示bulk insert 呈suspend状态,等待类型[详细]
-
SQL Server管理员专用连接的使用
所属栏目:[MsSql教程] 日期:2016-10-09 热度:111
作为一名DBA,经常会处理一些比较棘手的服务无响应问题,鉴于事态的严重性,多数DBA可能直接用重启大法,以便尽快的恢复生产环境的正常运转,但是多数情况下我们却无法究其原因,即使产生了dump文件,没有微软的支持,我们同样被蒙在鼓里,幸好微软给我们[详细]
-
sql-server 2005数据库文件恢复:检测到基于一致性的逻辑 I/O错误
所属栏目:[MsSql教程] 日期:2016-10-09 热度:184
今天sql-server数据库突然报错: SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x7c781313,但实际为: 0x67a313c9)。在文件 'C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATAE_BLOCK_DB.mdf' 中、偏移量为 0x00000000a3400[详细]
-
Sql Server中如何让程序暂停几秒中再执行后面的命令
所属栏目:[MsSql教程] 日期:2016-10-03 热度:140
-- 语法 WAITFOR { DELAY 'time_to_pass' | TIME 'time_to_execute' | [ ( receive_statement ) | ( get_conversation_group_statement ) ] [ , TIMEOUT timeout ] } 注意:Delay最多不超过24小时 waitfor delay'00:00:10' -- 暂停10秒 select GETDATE() WA[详细]
-
使用T-SQL的好习惯
所属栏目:[MsSql教程] 日期:2016-10-03 热度:178
副标题#e# 1.在生产环境中不要出现Select * 这一点我想大家已经是比较熟知了,这样的错误相信会犯的人不会太多。但我这里还是要说一下。 不使用Select *的原因主要不是坊间所流传的将*解析成具体的列需要产生消耗,这点消耗在我看来完全可以忽略不计。更主[详细]
-
T-SQL查询进阶:视图详解
所属栏目:[MsSql教程] 日期:2016-10-03 热度:178
副标题#e# 简介 视图可以看作定义在SQL Server上的虚拟表.视图正如其名字的含义一样,是另一种查看数据的入口.常规视图本身并不存储实际的数据,而仅仅存储一个Select语句和所涉及表的metadata. 视图简单的理解如下: 通过视图,客户端不再需要知道底层table[详细]
-
T-SQL查询进阶:流程控制语句
所属栏目:[MsSql教程] 日期:2016-10-03 热度:60
副标题#e# 概述 和其他高级语言一样,T-SQL中也有用于控制流程的语句。T-SQL中的流程控制语句进一步扩展了T-SQL的力量使得大部分业务逻辑可以在数据库层面进行。但很多人对T-SQL中的流程控制语句并没有系统的了解,本篇文章会系统的对T-SQL语句中的流程控制[详细]
-
T-SQL查询进阶:深入理解子查询
所属栏目:[MsSql教程] 日期:2016-10-03 热度:177
副标题#e# 引言 SQL有着非常强大且灵活的查询方式,而多表连接操作往往也可以用子查询进行替代,本篇文章将会讲述子查询的方方面面。 简介 子查询本质上是嵌套进其他SELECT,UPDATE,INSERT,DELETE语句的一个被限制的SELECT语句,在子查询中,只有下面几个子句[详细]
-
SQL Server误区:有关堆碎片的误区
所属栏目:[MsSql教程] 日期:2016-10-03 热度:58
误区 #29:可以通过对堆建聚集索引再DROP后进行堆上的碎片整理 Nooooooooooooo!!! 对堆建聚集索引再DROP在我看来是除了收缩数据库之外最2的事了。 如果你通过sys.dm_db_index_physical_stats(或是老版本的DBCC SHOWCONTIG)看到堆上有碎片,绝对不要通过建立[详细]
-
SQL Server误区:有关大容量事务日志恢复模式的误区
所属栏目:[MsSql教程] 日期:2016-10-03 热度:169
误区 #28:有关大容量事务日志恢复模式的几个误区 28 a)常见的DML操作可以被最小记录日志 不是。在大容量事务日志恢复模式下只有一小部分批量操作可以被最小记录日志,这类操作的列表可以在Operations That Can Be Minimally Logged找到。这是适合SQL Server[详细]
-
SQL Server误区:使用BACKUP ... WITH CHECKSUM可以替代DBCC CheckDB
所属栏目:[MsSql教程] 日期:2016-10-03 热度:131
误区 #27:使用BACKUP ... WITH CHECKSUM可以替代DBCC CheckDB 错误 乍一看,由于BACKUP WITH CHECKSUM会检测所有分配出去的页的校验和的值,这个误区貌似是这么回事,但实际上并不是这么回事,原因如下: 由SQL Server 2000或是更早版本升上来的数据库page[详细]
-
SQL Server误区:有关填充因子的误区
所属栏目:[MsSql教程] 日期:2016-10-03 热度:106
误区 #25:多个有关填充因子的误区 都是错误的 25a) 填充因子是一直存在的 不是的,通过Books Online可以看到(译者:我在新版的BOL没有找到这句话): 重要: 填充因子仅仅在索引创建或重建时生效,SQL Server存储引擎并不会一直保证页内的空闲值和填充因子保[详细]
-
SQL Server误区:26个有关还原(Restore)的误区
所属栏目:[MsSql教程] 日期:2016-10-03 热度:108
本系列文章一直所没有触及的就是有关还原(Restore)的话题,因为一旦牵扯到这个话题就会涉及大量的误区,多到我无法通过一篇文章说完的地步。 事实上,我希望用字母表的顺序为每一个误区进行编号,希望你看了不要昏昏欲睡。下面开始揭穿这26个误区。 Myth #[详细]
-
SQL Server误区:有关锁升级的误区
所属栏目:[MsSql教程] 日期:2016-10-02 热度:144
误区 #23: 锁升级的过程是由行锁升级到页锁,再由页锁升级到表锁 错误 实际不是,在SQL Server 2005和之前的版本,锁升级会直接升到表锁。 在SQL Server 2005或SQL Server 2008,你可以通过如下跟踪标志改变锁升级的行为: 标志1211-完全禁止锁升级,但锁使[详细]