ORACLE中AS和IS的不同

答案是基本没有不同 哈哈 这是ORACLE为了方便而设置的同义词 在建存储过程(PROCEDURE)/函数(FUNCTION) 以及自定义类型(TYPE)/包(PACKAGE)的时候 用这两种都不会报错 但是 并不是所有的地方都可以这样 在建视图(VIEW)的时候 是只能用 AS 而不能用 IS 的 相反在声明游标(CURSOR)的时候 是只能用 IS 而不能用 AS 的 我也是好奇才研究这个问题 中文网站上并没有详细的讨论过这个问题 查阅了很多资料和文档 有趣的是 发现在哪里都有难以理解的偏执狂 在ORACLE官方论坛 看到一个人问存储过程用AS和IS什么区别 下边就有人回答没有区别 但是在视图里就不能用IS 这时候一个路人跳出来说 人家楼主明明问的是在存储过程里有什么区别 你不好好回答 逞的什么能 还扯什么视图 这时候路人都看不下去了说人家回答问题怎么了 有人说经常见有人问这种语法问题说下也好 第一个回答的人很有涵养说大家不要吵 讨论问题就好了 我回答要是违规版主会处理的 这时候那个偏执狂继续跳出来战群雄 说这里是存储过程版面 讨论的什么语法问题 谁会在这里问语法问题 这里不欢迎你们 后来 后来当然是大家都不理他了

2010年11月30日 · 1 分钟 · Hyacinthus

Shell中用SQLPLUS出错

前几天整理shell,将一个sqlplus语句移到了函数里,在AIX上,k-shell 如下: function a { sqlplus usr/pwd@sid <<! exit ! } 然后好好的语句就开始报错: test.sh: 0403-057 Syntax error at line 3 : `<‘ is not matched. 我开始以为是换行符的问题,或者是我手误在哪里输进去了个什么标点 结果查看了许久,都找不到什么错误的地方. 干脆写最基本的语句开始测试. 最终终于找到了让人哭笑不得的原因: 在shell里用«进入别的程序,结束标志不能缩进… 恍然大悟,我做的唯一改动就是把脚本整体右缩进了一个制表符呀. 以前还没留意过这个问题,我干脆写shell的函数不缩进了…

2010年11月23日 · 1 分钟 · Hyacinthus