1.查询的时候,如果不用 用户名.表名的形式,可能会提示“ORA-00942:表和视图不存在”
解决方案:新建同义词
多用户协同开发中,可以屏蔽对象的名字及其持有者。如果没有同义词,当操作其他用户的表时,必须通过user名.object名的形式,采用了Oracle同义词之后就可以隐蔽掉user名,当然这里要注意的是:public同义词只是为数据库对象定义了一个公共的别名,其他用户能否通过这个别名访问这个数据库对象,还要看是否已经为这个用户授权。
例如: CREATE PUBLIC SYNONYM ss 2 FOR scott.supplier;
2.字符串拼接,sqlserver使用+,而oracle用的是||
3.触发器,SqlServer使用inserted等,oracle用 :new.表 :old.表
4.oracle的case when用法,一定要加else null;
CASE
WHEN ...
ELSE
NULL;
END CASE;
本文探讨了在Oracle数据库环境中,如何有效利用同义词、正确处理字符串拼接、理解触发器语法、以及掌握CASE WHEN语句的用法。特别强调了同义词在多用户协同开发中的应用,以及SQL Server与Oracle在字符串拼接和触发器上的差异。同时,提供了关于CASE WHEN语句中使用elsenull的重要性说明。
1万+

被折叠的 条评论
为什么被折叠?



