create or replace procedure create_table as
begin
execute immediate '
create table student(id number,name varchar2(10),salary number)';
execute immediate 'insert into student values(100,"jacky",10000)';
execute immediate 'insert into student values(101,"rose",20000)';
execute immediate 'insert into student values(102,"john",8000)';
end create_table;
exec create_table;
ORA-00984: 列在此处不允许
ORA-06512: 在 "SYSTEM.CREATE_TABLE", line 5
ORA-06512: 在 line 2表是创建成功了 ,但数据不能插进去
begin
execute immediate '
create table student(id number,name varchar2(10),salary number)';
execute immediate 'insert into student values(100,"jacky",10000)';
execute immediate 'insert into student values(101,"rose",20000)';
execute immediate 'insert into student values(102,"john",8000)';
end create_table;
exec create_table;
ORA-00984: 列在此处不允许
ORA-06512: 在 "SYSTEM.CREATE_TABLE", line 5
ORA-06512: 在 line 2表是创建成功了 ,但数据不能插进去
BEGIN
EXECUTE IMMEDIATE '
create table student(id number,name varchar2(10),salary number)';
EXECUTE IMMEDIATE 'insert into student values(100,''jacky'',10000)';--是两个单引号,不是双引号
EXECUTE IMMEDIATE 'insert into student values(101,''rose'',20000)';--是两个单引号,不是双引号
EXECUTE IMMEDIATE 'insert into student values(102,''john'',8000)';--是两个单引号,不是双引号
--在一个引号的字符串中,两个单引号表示一个引号
END create_table;