达梦数据库学习之二:兼容Sqlserver

在SqlServer中有如下代码

declare @ss int
set @ss=1
select myfile=@ss

转到达梦后代码可能就会变成

declare 
  ss int;
begin
  ss:=1;
  select ss as myfile; 
end

 

代码的阅读习惯已大变,如果我们习习惯了SqlServer的@作变量,setselect 赋值,以及别名=字段等时,我们试着改成

declare 
  @ss int;
begin
  set @ss=1;
  select myfile=@ss; 
end

 执行时会报错

这时我们可以设置实例兼容SqlServer

打开DM控制台工具

 修改如上图:服务器配置->实例配置->具体实例->兼容性相关参数中的MS_PARSE_PERMIT=3 与COMPATIBLE_MODE=2

 

MS_PARSE_PERMIT:是否支持MS SQLSERVER的语法。0:不支持;1:支持。2:在MS_PARSE_PERMIT =1的基础上,兼容MS SQLSERVER的查询项中支持“标识符=列名”或“@变量名=列名”用法。当COMPATIBLE_MODE=3时,MS_PARSE_PERMIT的实际值为1

COMPATIBLE_MODE:是否兼容其他数据库模式。0:不兼容,1:兼容SQL92标准,2:兼容ORACLE,3:兼容MS SQL SERVER,4:兼容MYSQL,5:兼容DM6,6:部分兼容TERADATA 

重启实例服务

再执行上在的代码

 

如果你对达梦的Sql语句熟悉了,最好还是不要用兼容模式了!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值