首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

问几个oracle PLSQL的有关问题,各位帮忙啊

2011-12-08 
问几个oracle PLSQL的问题,各位帮忙啊!刚开始用PLSQL,好多问题啊!1、如何通过字符串变量构造一个SQL语句,然

问几个oracle PLSQL的问题,各位帮忙啊!
刚开始用PLSQL,好多问题啊!

1、如何通过字符串变量构造一个SQL语句,然后调用EXECUTE执行,请写个简单例子,如果能结合下面的问题写最好。

2、对于类似in   ( 'aaa ', 'bbb ', 'ccc ', 'ddd ')的语句,其中的( 'aaa ', 'bbb ', 'ccc ', 'ddd ')是不是要定义成专门的类型。如何定义和赋值?如何定义这种类型的数组?

3、我写如下的命令(示意)
      a:=1000;
      s:= 'select   *   from   table   where   aa=a ';
      execute   s;
      其中的a能够被正确初始化么?


[解决办法]
:)
PL/SQL DEVELOPER这个工具不错
in固定的话就用固定值,如果是符合某个条件的,就用exists来做了。
声明varchar2类型的变量,构造sql
excute immediately sql 就可以了。
[解决办法]
ls_a VARCHAR2(10);
ls_s VARCHAR2(100);

ls_a := 'aaaa '
ls_s := 'select * from table where aa= '||ls_a
excute immediately ls_s;
[解决办法]
2中的是指符合in ( 'aaa ', 'bbb ', 'ccc ', 'ddd ')的条件
[解决办法]
没有搞过这样的。。。
[解决办法]
your_col in ( 'aaa ', 'bbb ', 'ccc ', 'ddd ')
可以替换为
instr( 'aaa,bbb,ccc,ddd ',your_col)> 0
虽然稍微损失些效率……

热点排行