一、服务器配置:
1、兼容级别:兼容级别只影响指定数据库中的行为,而不会影响整个服务器上的行为。
1.1、查看数据库兼容级别及更改兼容级别:
SELECT compatibility_level FROM sys.databases WHERE name=DB_NAME()
1.2、更改兼容级别:将某些数据库行为设置为与指定的 SQL Server 版本兼容。
sp_dbcmptlevel [ [ @dbname = ] name ]
[ , [ @new_cmptlevel = ] version ]
--上面的命令有可能在后续取消,所以建议使用下面语句:
ALTER DATABASE database_name
SET COMPATIBILITY_LEVEL = { 80 | 90 | 100 }
权限
只有数据库所有者、sysadmin 固定服务器角色和 db_owner 固定数据库角色的成员(前提是您要更改当前数据库)才能执行此过程。
较低兼容级别和级别 100 之间的差异
兼容级别设置为 90 或更低 | 兼容级别设置为 100 | 影响的可能性 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
对于多语句表值函数,在创建它们时,无论会话级别设置如何,QUOTED_IDENTIFER 设置始终为 ON。 |
在创建多语句表值函数时,会遵循 QUOTED IDENTIFIER 会话设置。 |
中 |
||||||||
在创建或更改分区函数时,会评估函数中的 datetime 和 smalldatetime 文字,并假定语言设置为 US_English。 |
使用当前语言设置来评估该分区函数中的 datetime 和 smalldatetime 文字。 |
中 |
||||||||
INSERT 和 SELECT INTO 语句中允许使用(但会忽略)FOR BROWSE 子句。 |
INSERT 和 SELECT INTO 语句中不允许使用 FOR BROWSE 子句。 |
中 |
||||||||
OUTPUT 子句中允许使用全文谓词。 |
OUTPUT 子句中不允许使用全文谓词。 |
低 |
||||||||
不支持 CREATE FULLTEXT STOPLIST、ALTER FULLTEXT STOPLIST 和 DROP FULLTEXT STOPLIST。系统非索引字表自动与新的全文索引相关联。 |
支持 CREATE FULLTEXT STOPLIST、ALTER FULLTEXT STOPLIST 和 DROP FULLTEXT STOPLIST。 |
低 |
||||||||
MERGE 不作为保留关键字强制应用。 |
MERGE 是完全保留的关键字。在 100 和 90 兼容级别下,都支持 MERGE 语句。 |
低 |
||||||||
使用 INSERT 语句的 <dml_table_source> 参数会引发语法错误。 |
您可以捕获嵌套的 INSERT、UPDATE、DELETE 或 MERGE 语句中 OUTPUT 子句的结果,然后将这些结果插入目标表或视图。这通过使用 INSERT 语句的 <dml_table_source> 参数来实现。 |
低 |
||||||||
除非指定 NOINDEX,否则 DBCC CHECKDB 或 DBCC CHECKTABLE 将对单个表或索引视图及其所有非聚集索引和 XML 索引同时执行物理和逻辑一致性检查。不支持空间索引。 |
除非指定 NOINDEX,否则 DBCC CHECKDB 或 DBCC CHECKTABLE 将对单个表及其所有非聚集索引同时执行物理和逻辑一致性检查。但是,在默认情况下,仅对 XML 索引、空间索引和索引视图执行物理一致性检查。 如果指定了 WITH EXTENDED_LOGICAL_CHECKS,则将对索引视图、XML 索引和空间索引(如果存在)执行逻辑检查。默认情况下,先执行物理一致性检查,然后执行逻辑一致性检查。如果还指定了 NOINDEX,则仅执行逻辑检查。 |
低 |
||||||||
如果将 OUTPUT 子句和数据操作语言 (DML) 语句一起使用,并且在语句执行过程中发生运行时错误,则会终止并回滚整个事务。 |
如果将 OUTPUT 子句和数据操作语言 (DML) 语句一起使用,并且在语句执行过程中发生运行时错误,则行为取决于 SET XACT_ABORT 设置。如果 SET XACT_ABORT 设置为 OFF,则由使用 OUTPUT 子句的 DML 语句所生成的语句中止错误将终止该语句,但批处理的执行仍会继续,并且不会回滚事务。如果 SET XACT_ABORT 设置为 ON,则由使用 OUTPUT 子句的 DML 语句所生成的全部运行时错误都将终止批处理,并回滚事务。 |
低 |
||||||||
CUBE 和 ROLLUP 不作为保留关键字强制应用。 |
CUBE 和 ROLLUP 是 GROUP BY 子句中的保留关键字。 |
低 |
||||||||
对 XML anyType 类型的元素应用严格验证。 |
对 XML anyType 类型的元素应用宽松验证。有关详细信息,请参阅通配符组成部分和内容验证。 |
低 |
||||||||
数据操作语言语句不能查询或修改特殊属性 xsi:nil 和 xsi:type。 这意味着 |
特殊属性 xsi:nil 和 xsi:type 作为常规属性存储,不能查询和修改。 例如,执行查询 |
低 |
||||||||
用于将 XML 常量字符串值转换为 SQL Server datetime 类型的用户定义函数被标记为确定的。 |
用于将 XML 常量字符串值转换为 SQL Server datetime 类型的用户定义函数被标记为不确定的。 |
低 |
||||||||
不完全支持 XML 联合和列表类型。 |
完全支持联合和列表类型,包括以下功能:
|
低 |
||||||||
当视图或内联表值函数中包含 xQuery 方法时,不对该方法所需的 SET 选项进行验证。 |
当视图或内联表值函数中包含 xQuery 方法时,对该方法所需的 SET 选项进行验证。如果该方法的 SET 选项设置不正确,将引发一个错误。 有关所需选项设置的详细信息,请参阅设置选项(XML 数据类型)。 |
低 |
||||||||
包含行尾字符(回车符和换行符)的 XML 属性值不根据 XML 标准进行规范化。即返回回车符和换行符,而不是单个换行符。 |
包含行尾字符(回车符和换行符)的 XML 属性值会根据 XML 标准进行规范化。也就是说,外部已分析实体(包括文档实体)中的所有换行符都会在输入时进行规范化,方法是将两字符序列 #xD #xA 和后面没有跟 #xA 的所有 #xD 都转换为单个 #xA 字符。 使用属性来传输包含行尾字符的字符串值的应用程序接收到的这些字符将和提交时有所不同。若要避免规范化过程,请使用 XML 数字字符实体对所有行尾字符进行编码。 |
低 |
||||||||
ROWGUIDCOL 和 IDENTITY 列属性可能错误地命名为约束。例如, |
ROWGUIDCOL 和 IDENTITY 列属性不能命名为约束。返回错误 156。 |
低 |
||||||||
使用双向赋值(如 只有在兼容级别设置为 90 时,此行为才适用。 |
使用双向赋值来更新列会产生预期的结果,因为在语句执行过程中,只会访问列的语句起始值。 |
低 |
||||||||
在包含* UNION 运算符的语句中,允许使用变量赋值,但会返回意外的结果。例如,在以下语句中,将来自两个表的联合的
|
在包含* UNION 运算符的语句中不允许变量赋值。返回错误 10734。 若要纠正该错误,请重写查询,如下例所示。
|
低 |
||||||||
ODBC 函数 {fn CONVERT()} 使用语言的默认日期格式。对于有些语言,默认格式为 YDM,这会导致在将 CONVERT() 与要求使用 YMD 格式的其他函数(如 {fn CURDATE()})结合使用时出现转换错误。 |
在转换为 ODBC 数据类型 SQL_TIMESTAMP、SQL_DATE、SQL_TIME、SQLDATE、SQL_TYPE_TIME 和 SQL_TYPE_TIMESTAMP 时,ODBC 函数 {fn CONVERT()} 使用样式 121(一种独立于语言的 YMD 格式)。 |
低 |
||||||||
ODBC 函数 {fn CURDATE()} 仅返回“YYYY-MM-DD”格式的日期。 |
ODBC 函数 {fn CURDATE()} 同时返回日期和时间,例如“YYYY-MM-DD hh:mm:ss”。 |
低 |
||||||||
日期时间内部函数(如 DATEPART)不需要字符串输入值,即可成为有效的日期时间文字。例如,SELECT DATEPART (year, '2007/05-30') 可以成功编译。 |
日期时间内部函数(如 DATEPART)需要字符串输入值,才能成为有效的日期时间文字。在使用无效的日期时间文字时,会返回错误 241。 |
低 |
二、DBA应该记住的系统存储过程:
系统存储过程 | 用处 |
sp_help | 查看对象的相关说明 |
sp_helpdb | 查看数据库的相关属性 |
sp_who | 列出目前连接属性 |
sp_dboption | 设置数据库的属性 |
sp_tableoption | 设置数据表的选项 |
sp_configure | 配置SQLServer服务器 |
sp_executesql | 执行SQL语句 |
sp_helptext | 查看对象内容 |
sp_lock | 查看数据库锁定情况 |
sp_who2 | 显示连接的被锁定情况 |
sp_depends | 查看对象的依赖对象 |
sp_addmessage | 增加系统信息 |
DBA查询命令积累——不断更新的更多相关文章
-
MongoDb进阶实践之六 MongoDB查询命令详述(补充)
一.引言 上一篇文章我们已经介绍了MongoDB数据库的查询操作,但是并没有介绍全,随着自己的学习的深入,对查询又有了新的东西,决定补充进来.如果大家想看上一篇有关MongoDB查询的 ...
-
Android系统代码查询命令集合
Android系统代码查询命令集合 *#06# 显示MEID *#*#4636#*#* 显示版本,或更新相机韧体 *#*#7594#*#* 当长按关机按钮时,会出现一个切换手机部分设置及更改设定 WL ...
-
ELK查询命令详解
目录 ELK查询命令详解 倒排索引 使用ElasticSearch API 实现CRUD 批量获取文档 使用Bulk API 实现批量操作 版本控制 什么是Mapping? 基本查询(Query查询) ...
-
ELK查询命令详解总结
目录 ELK查询命令详解 倒排索引 倒排索引原理 分词器介绍及内置分词器 使用ElasticSearch API 实现CRUD 批量获取文档 使用Bulk API 实现批量操作 版本控制 什么是Map ...
-
git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
-
【Linux高频命令专题(8)】五大查询命令
find 格式 find 路径 -命令参数 [输出形式] 路径:告诉find在哪儿去找你要的东西 命令参数:参考下面 输出形式:输出形式很多,-print,-printf,-print,-exec,- ...
-
MySQL常用的查询命令
MySQL常用的查询命令 author: headsen chen 2017-10-19 10:15:25 个人原创.转载请注明作者,出处,否则依法追究法律责任 1,查询现在的时间:mysql& ...
-
AD域控Dsquery查询命令实列
注:请以管理员的身份运行cmd程序,要不然某些命令不生效 AD域控Dsquery查询命令实列 查询技术支持二部的所有用户 dsquery user OU=技术支持二部,OU=技术部, ...
-
【github&;&;git】4、git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
随机推荐
-
【转】C++标准库和标准模板库
C++强大的功能来源于其丰富的类库及库函数资源.C++标准库的内容总共在50个标准头文件中定义.在C++开发中,要尽可能地利用标准库完成.这样做的直接好处包括:(1)成本:已经作为标准提供,何苦再花费 ...
-
[BZOJ1876][SDOI2009]superGCD(高精度)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1876 分析: 以为辗转相减会TLE呢……但是好像没这个数据……就这么水过去了…… 辗转 ...
-
rac 11g_第二个节点重启后无法启动实例:磁盘组dismount问题
原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明以下出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlo ...
-
C语言标准
1,K&R C 1978年, Dennis Ritchie和Brian Wilson Kernighan合作出版了<The C Programming Language>的第一版. ...
-
broadcom6838开发环境实现函数栈追踪
在嵌入式设备开发中.内核为内核模块的函数栈追踪已经提供了非常好的支持,但用户层的函数栈追踪确没有非常好的提供支持. 在网上收集学习函数栈跟踪大部分都是描写叙述INTER体系架构支持栈帧的实现机制.或者 ...
-
JDBC连接Oracle数据库代码
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.S ...
-
sublime text 3 3126 注册码+中文包
sublime text 3 3126 注册码+中文包 Sublime Text 3 3126 注册码,网上找的.我用的最后一个. 复制一个,打开 Sublime Text 3, help -- ...
-
Session的引入以及Cookie的不足
一.为什么引入session > Cookie实际上就是一个头. > 服务器会创建Cookie,并且将Cookie以一个响应头的形式发送给浏览器 > 浏览器收到Cook ...
-
洗礼灵魂,修炼python(15)--列表进阶话题—>;列表解析/列表生成器
是的,我是想到什么知识点就说什么,没有固定的主题,我的标题都是在写完博客再给的.本篇博文说说列表进阶话题.其实列表应该是比较熟悉的了,而毫不夸张的说,在实际的开发中,列表也是使用的最多的,以后你会体会 ...
-
Linux常用指令之一
1.基础命令 ls --查看当前目录下的文件 cd --切换目录或者直接回到home目录 cd - --切换最近使用的两次目录 cd .. --切换到上一级目录 pwd ...