Oracle中的转义字符用法

2014-11-24 18:12:57 · 作者: · 浏览: 0

1. 使用动态SQL时发现的问题,


在字符串中还要使用单引号怎么办呢,使用转义字符,转义字符正是单引号本身


declare
v_nyr varchar2(8);
v_yydm varchar2(16);
v_sql varchar2(200);
v_cur number;
cursor v_cursor is
select distinct nyr,yydm from v_nyr_yydm_test;

begin
open v_cursor;
loop
fetch v_cursor into v_nyr,v_yydm;
exit when v_cursor%notfound;
v_sql:='create or replace view v_1_'||v_nyr||'_'||v_yydm||
' as select kh from dm_mpg_test where nyr='''||v_nyr||'''
and yydm= '''||v_yydm||''' with read only';
v_cur:=dbms_sql.open_cursor;
dbms_output.put_line(v_sql);
dbms_sql.parse(v_cur,v_sql,dbms_sql.native);
dbms_sql.close_cursor(v_cur);
end loop;
close v_cursor;
end;


2. 使用转义字符使用escape


select view_name from user_views
where view_name like 'V/_2/_%' escape '/';