我想在PL \ SQL中编写一个过程,它会将特殊字符(在下面的示例中:哈希)更改为先前声明的字符(在下面的示例中:下划线)。该过程应采用表名和列名作为参数。我编写了这样的代码,然而,它不起作用:
{{1}}
任何帮助将不胜感激
答案 0 :(得分:3)
您在IS
之前错过了BEGIN
,而且您的字符串中的引号太多了:
create or replace procedure change_chars(table_name in varchar2, column_name in varchar2) is
begin
execute immediate 'update ' || table_name ||
' set ' || column_name || ' = replace(' || column_name ||', ''#'', ''_'')';
end;
' set ' || column_name || ' = replace(' || column_name || q'[, '#', '_')]';