[转帖]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 事务隔离级别与锁的申请和释放
脏读:当一个事务开始更新数据,但是这个事务并没有完全提交,这个时候第二个事务开始读取数据,把第一个事务所更改的数据读了出来, 第二个事务读取的数据时临时的,因为有可能第一个事务最终有可能做回滚操作 不 ...
随机推荐
- 用C实现单隐层神经网络的训练和预测(手写BP算法)
实验要求:•实现10以内的非负双精度浮点数加法,例如输入4.99和5.70,能够预测输出为10.69•使用Gprof测试代码热度 代码框架•随机初始化1000对数值在0~10之间的浮点数,保存在二维数 ...
- Python学习之路:MINST实战第一版
1.项目介绍: 搭建浅层神经网络完成MNIST数字图像的识别. 2.详细步骤: (1)将二维图像转成一维,MNIST图像大小为28*28,转成一维就是784. (2)定义好神经网络的相关参数: # M ...
- SpringBoot实现监听redis key失效事件
需求: 处理订单过期自动取消,比如下单30分钟未支付自动更改订单状态 解决方案1: 可以利用redis天然的key自动过期机制,下单时将订单id写入redis,过期时间30分钟,30分钟后检查订单状态 ...
- C语言学习之路之基础变量
Hello,大家好,今天又和大家见面了!前两天,我看到了几款游戏引擎渲染效果的对比的视频,https://www.bilibili.com/video/av5113296?from=search&am ...
- anaconda+pycharm的安装和应用
至于anaconda的安装与pycharm的安装在此不做多说,主要说下遇到的问题. 问题描述: 安装anaconda后,pip下载的第三方库调用不到. 原因分析: anaconda自带的python3 ...
- Netty源码分析第3章(客户端接入流程)---->第2节: 处理接入事件之handle的创建
Netty源码分析第三章: 客户端接入流程 第二节: 处理接入事件之handle的创建 上一小节我们剖析完成了与channel绑定的ChannelConfig初始化相关的流程, 这一小节继续剖析客户端 ...
- 【推荐系统】neural_collaborative_filtering(源码解析)
很久没看推荐系统相关的论文了,最近发现一篇2017年的论文,感觉不错. 原始论文 https://arxiv.org/pdf/1708.05031.pdf 网上有翻译了 https://www.cnb ...
- JavaScript设计模式-----模板方法模式
模板方法模式是一种只需要使用继承就可以实现的非常简单点的模式. 模板方法模式有两部分组成,第一部分是抽象父类,第二部分是具体的实现子类.通常在抽象父类中封装了子类的算法框架,包括实现 一些公共方法以及 ...
- 关于React面试题汇总
1.redux中间件 中间件提供第三方插件的模式,自定义拦截 action -> reducer 的过程.变为 action -> middlewares -> reducer .这 ...
- Python List Comprehension
(一)使用List Comprehension的好处 在了解Python的List Comprehension之前,我们习惯使用for循环创建列表,比如下面的例子: numbers = range(1 ...