站点图标 IDC铺

sql server转oracle需要重度注视的几点

1、  字符型的字段相加需要用“||”,如果用“+”的话,会报“无效的数字”的错误。
2、  Top 1 类似的脚本需要通过where rownum<=1来实现。
3、  ISNULL函数需要通过NVL函数来替换。
4、对于时间类型的修改不能单单使用单引号修改,需要进行类型转换TO_DATE(‘{0}’,’yyyy/MM/dd hh24:mi:ss’)
5、对于NVARCHAR2类型的数据进行条件比对的时候,需要在常量前加“N” 即 USER_ID=N’5167179d-ce74-4217-8a94-df94c04d8b8b’
6、使用dbo开头的表名在oracle中都必须去掉
7、TOP (100) PERCENT 字样必须去掉
8、在sqlserver中 当前时间是GETDATE(),得到GUID是NEWID(),而oracle中当前时间是SYSDATE,得到GUID是SYS_GUID()函数。
9、在sqlserver中,sql脚本的大小写是无关紧要的,而在oracle中,不管你的是大写还是小写,在实际执行中oracle都会转换为大写后再执行,如果非要有大小写的字段,需要用双引号包含字段,因此,为了让程序更好的兼容,建议数据字段和表名统统都用大写吧!
退出移动版