这个代码错在哪里?关于存储过程与字符串连接的解决方法
这个代码错在哪里?关于存储过程与字符串连接的
我下面的代码目的是写一个存储过程,创建5个功能一样表空间名则分别为lee_tablespace_1~lee_tablespace_5
运行时有错 不知道具体错在哪里
请教达人~
------解决方案--------------------
是不是要用动态SQL来创建啊
------解决方案--------------------
要用动态SQL。。。
------解决方案--------------------
建表语句肯定要用动态SQL的
更别说你这还是动态拼接的呢
------解决方案--------------------
我下面的代码目的是写一个存储过程,创建5个功能一样表空间名则分别为lee_tablespace_1~lee_tablespace_5
运行时有错 不知道具体错在哪里
请教达人~
- SQL code
create or replace procedure create_tablespace as i number; begin i:=1; loop create tablespace 'lee_tablespace_'||i datafile '/var/oracle/oradata/db0/lee_tablespace_t'||i||'.dat' size 1500m autoextend on default storage (initial 1000m next 50m minextents 1 maxextents unlimited pctincrease i:=i+1; if i>5 then exit end if end loop end
------解决方案--------------------
是不是要用动态SQL来创建啊
------解决方案--------------------
要用动态SQL。。。
------解决方案--------------------
建表语句肯定要用动态SQL的
更别说你这还是动态拼接的呢
------解决方案--------------------
- SQL code
create or replace procedure create_tablespace as i number; temp_sql varchar(2000); begin i:=1; loop temp_sql:='create tablespace ''lee_tablespace_'''||to_char(i)||' datafile ''/var/oracle/oradata/db0/lee_tablespace_t'''||to_char(i)||'''.dat'' size 1500m autoextend on default storage (initial 1000m next 50m minextents 1 maxextents unlimited pctincrease '; execute immediate temp_sql; i:=i+1; if i>5 then exit; end if; end loop; end