[转帖]SQLSERVER的兼容级别
SQL Server数据库的兼容级别
http://www.cnblogs.com/sosoft/archive/2017/07/08/sqljrjb.html
改天尝试一下 在SQLSERVER2008R2 里面修改兼容级别成SQL2005的情况下 能否再现date字段类型的问题。
以及验证一下兼容级别的特点。
今天白天 尝试了下 在SQLSERVER2008r2 以及SQLSERVER2005的数据库里面
结论:
SQLSERVER的兼容性级别 应该是针对执行的SQL语句来的 不是针对数据结构, 尝试了下 : 在SQL2008R2的环境上面创建一个兼容性 的数据库 也可以创建 date类型的列数据结构的表. SQL2005下面创建的数据库实例才无法创建新的列. 所以支持的列数据类型 应该是 数据库的引擎来决定的 而不是兼容级别来决定
创建数据库

使用sql2005的查询分析器创建表

只有在SQLSERVER2005上面的数据库才会报错.

将sqlserver 2005的数据文件备份到sql2008上面去 就能够创建相应的列了.

SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的服务器等多种平台使用。
Microsoft SQL Server 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
这次何问起收集了一些SQL Server数据库的兼容级别和命名规则的内容分享给大家。这个一道相关的练习题:http://hovertree.com/tiku/bjag/evktshym.htm
随着时间的推移,Sql Server发布有不少版本,如2000、2005、2008、2008R2、2012、2014、2016等。比如HoverTreeTop项目最开始用的是Sql Server 2008。那么2008的兼容级别是什么呢?答案是100。如图:

兼容级别有60、65、70、80、90、100、110等。兼容级别和版本号是有某种联系的。通过SSMS连接Sql servr,查看实例的版本就能知道当前SQL Server的版本号了。这里何问起收集了一个对应关系的表格:
| RTM (no SP) | SP1 | SP2 | SP3 | SP4 | |
|---|---|---|---|---|---|
| SQL Server 2014 codename |
12.00.2000.8 | ||||
| SQL Server 2012 codename Denali |
11.00.2100.60 | 11.00.3000.0 | 11.00.5058.0 | ||
| SQL Server 2008 R2 codename Kilimanjaro |
10.50.160010.50.1600.1 | 10.50.2500.0 or 10.51.2500.0 |
10.50.4000.0 or 10.52.4000.0 |
||
| SQL Server 2008 codename Katmai |
10.00.1600.22 | 10.00.2531.0 | 10.00.4000.0 | 10.00.5500.0 | |
| SQL Server 2005 codename Yukon |
9.00.1399.06 | 9.00.2047 | 9.00.3042 | 9.00.4035 | 9.00.5000 |
| SQL Server 2000 codename Shiloh |
8.00.194 | 8.00.384 | 8.00.532 | 8.00.760 | 8.00.2039 |
| SQL Server 7.0 codename Sphinx |
Sql Server 7.0使用70级别,Sql Server 2000使用80级别,Sql Server 2005使用90级别,Sql Server 2008使用100级别,Sql Server 2012使用110级别。如下表:

另外何问起要说的是Sql Server 2016的兼容级别是130,Sql Server 2017的兼容级别是140。
若要设置与指定的 Microsoft SQL Server 早期版本兼容的特定数据库行为,请使用 ALTER DATABASE SET COMPATIBILITY_LEVEL。兼容级别只影响指定数据库中的行为,而不会影响整个服务器上的行为。
在 SQL Server 的早期版本中,sp_dbcmptlevel 用于设置兼容级别。不推荐使用 sp_dbcmptlevel。
COMPATIBILITY_LEVEL { 140 | 130 | 120 | 110 | 100 | 90 | 80 }
参考:

[转帖]SQLSERVER的兼容级别的更多相关文章
- SQLSERVER的兼容级别
今天采用SQL Mannager 2008连接远程的sqlserver数据库,之后弹出一个对话框,修改SQL兼容级别,当时每太注意,一下点击了确定按钮,结果导致两个系统SQL只想全部出错,幸亏发现的早 ...
- [微软官方]SQLSERVER的兼容级别
ALTER DATABASE (Transact-SQL) 兼容级别 https://docs.microsoft.com/zh-cn/sql/t-sql/statements/alter-datab ...
- 学习SQL的点点滴滴(三)-修改数据库的兼容级别
语法 ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = { 80 | 90 | 100 } 参数 database_name 要修改的数据库 ...
- SQLSERVER性能监控级别步骤
SQLSERVER性能监控级别步骤 下面先用一幅图描述一下有哪些步骤和顺序 1.识别瓶颈 识别瓶颈的原因包括多个方面,例如,资源不足,需要添加或升级硬件: 工作负荷在同类资源之间分布不均匀,例如,一个 ...
- SQL Server数据库的兼容级别
SQL Server 是Microsoft 公司推出的关系型数据库管理系统.具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行M ...
- SQL点点滴滴_修改数据库的兼容级别
语法 ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = { 80 | 90 | 100 } 参数 database_name 要修改的数据库 ...
- SQL Server 兼容级别
ALTER DATABASE (Transact-SQL) 兼容级别 适用对象:SQL Server(从 2008 版开始)Azure SQL 数据库Azure SQL 数据仓库并行数据仓库 将某些数 ...
- sqlserver默认隔离级别下并发批量update同一张表引起的死锁
提到死锁,最最常规的场景之一是Session1 以排它锁的方式锁定A表,请求B表,session2以排它锁的方式锁定B表,请求A表之类的,访问顺序不一致导致死锁的情况本文通过简化,测试这样一种稍显特殊 ...
- SQLServer 事务隔离级别与锁的申请和释放
脏读:当一个事务开始更新数据,但是这个事务并没有完全提交,这个时候第二个事务开始读取数据,把第一个事务所更改的数据读了出来, 第二个事务读取的数据时临时的,因为有可能第一个事务最终有可能做回滚操作 不 ...
随机推荐
- Springboot日记——核心编码篇
背景吐槽:想要让自己进阶一下,一定要有个可以拿出来秀的东西,所以要尝试写一个属于自己的网站或者平台.因此,我大概的看了一下springboot+Mybatis-plus+... 框架介绍 通常 SSM ...
- 流行创意风格教师求职简历免费word模板
18款流行创意风格教师求职简历免费word模板,也可用于其他专业和职业,个人免费简历模板,个人简历表免费,个人简历表格. 声明:该简历模板仅用于个人欣赏使用,请勿用于商业用途,谢谢. 下载地址:百度网 ...
- 查找linux镜像源中的软件版本并进行安装
输入以下代码进行软件查找 sudo apt-cache search YourSoftwareName 根据所得到的结果进行安装 sudo apt-get install YourSoftwareNa ...
- 如何写一个Xss Bot
如何写一个Xss Bot 现在的ctf比赛里 xss的出题方式比较特殊,一般使用xss bot,所以借鉴大佬经验尝试弄一个xss题目. xss bot 就是代替管理员去完成点击页面的任务,bot需要能 ...
- 【LeetCode算法题库】Day4:Regular Expression Matching & Container With Most Water & Integer to Roman
[Q10] Given an input string (s) and a pattern (p), implement regular expression matching with suppor ...
- 使用python实现解析二元一次方程
二元一次函数的实现 import cmathimport mathimport sys 这里导入cmath包是在后面用来处理复数的情况导入math使用来处理 平方 根号等的运算而导入sys的意义是为了 ...
- linux运维升级路线
运维工程师是从一个呆逼进化为苦逼再成长为牛逼的过程,前提在于你要能忍能干能拼,还要具有敏锐的嗅觉感知前方潮流变化.如:今年大数据,人工智能比较火……(相对表示就是 Python 比较火) 之前写过运维 ...
- java.io.tmpdir指定的路径在哪?
Java.io.tmpdir介绍 System.getproperty(“java.io.tmpdir”)是获取操作系统缓存的临时目录,不同操作系统的缓存临时目录不一样, 在Windows的缓存目录为 ...
- IIS6/IIS7环境下实现支持mp4视频随意拖动、预览播放、边下载边播放
前几天,一客户需要在IIS环境下实现MP4视频可以随意拖动观看,边下载边播放.一看这要求,IIS本身是无法实现,想着应该需要用插件,于是GG一番,还真找到这样的插件,此组件为H264-Streamin ...
- Xavier——Understanding the difficulty of training deep feedforward neural networks
1. 摘要 本文尝试解释为什么在深度的神经网络中随机初始化会让梯度下降表现很差,并且在此基础上来帮助设计更好的算法. 作者发现 sigmoid 函数不适合深度网络,在这种情况下,随机初始化参数会让较深 ...