[查询语句]
1.1 静态语句
select <colmun_list> into <varariable_list>;
1.2 动态语句
execute immediate <vv_sql> into <variable_list>;
例子:
declare
vv_sql varchar2(1000);
vv_brand_code varchar2(30);
vv_brand_name varchar2(30);
begin
vv_brand_code := 'B01'; --变量vv_brand_code的赋值 必须在 vv_sql赋值之前
vv_sqp := 'select brand_name from td_brand where brand_code=upper('||''''||vv_brand_code||''''||')';
execute immediate vv_sql into vv_brand_name;
exception
when others then
dbms_output.put_line(sqlcode||','||substr(sqlerrm,1,200)||',vv_sql='||vv_sql);
end;
/
[DML语句:insert,update,delete]
1.静态语句
insert into 表(字段列表) values(字段值列表);
insert into 表1(字段列表) select 字段列表 from 表2;
update 表 set 字段1=值1,字段2=值2,... [<where condition>];
delete from 表 [<where condition>];
2.动态语句
execute immediate <str_variable>;
[TCL语句:commit,rollback]
1.静态语句
2.动态语句
必须使用动态语句的场景:
1.DML语句
2.表名,字段名 是 使用变量拼接得到的
注意:动态语句的sql不能以;结尾,否则报错。
浙公网安备 33010602011771号