create or replace Procedure generateTable(p_TableName in varchar2)
is
str varchar2(100);
begin
str:='create table '||p_tablename||'(
OfficeNum VARCHAR2(6) not null,
OfficeName VARCHAR2(80) not null,
constraint PK_OFFICE primary key (OfficeNum)
)'; --grant create any table to your_user
execute immediate str;
end generateTable;
/
create or replace Procedure generateTable(TableName in varchar2)
is
begin
l_str:='create table '||tablename||'(OfficeNum VARCHAR2(6) not null,OfficeName VARCHAR2(80) not null,
constraint PK_OFFICE primary key (OfficeNum)
);'
其实我本意就是这样的;我就是不太会写存储过程;这个存储过程有一个参数就是要产生的数据库的表名,可是表名怎么和sql语句结合起来……
create or replace Procedure generateTable(TableName in varchar2)
is
begin
create table office (
OfficeNum VARCHAR2(6) not null,
OfficeName VARCHAR2(80) not null,
constraint PK_OFFICE primary key (OfficeNum)
);
end generateTable