使用動態 SQL 選擇值
假設使用者想要從不同的表中選擇資料。表由使用者指定。
function get_value(p_table_name varchar2, p_id number) return varchar2 is
value varchar2(100);
begin
execute immediate 'select column_value from ' || p_table_name ||
' where id = :P' into value using p_id;
return value;
end;
像往常一樣呼叫此函式:
declare
table_name varchar2(30) := 'my_table';
id number := 1;
begin
dbms_output.put_line(get_value(table_name, id));
end;
要測試的表:
create table my_table (id number, column_value varchar2(100));
insert into my_table values (1, 'Hello, world!');