想写一个函数,得到一个表中这一列的最大号, 函数传进去两个参数,一个表名,一个列名。
如下:
create or replace function F_GETMAX(tablename in varchar2, colname in VARCHAR) return integer is
Result integer;
begin
SELECT MAX(colname) INTO RESULT FROM tablename; return(Result);
end F_GETMAX;提示:表和视图不存在,用 execute immediate 调了半天也没弄好,那位大侠指点一下。
如下:
create or replace function F_GETMAX(tablename in varchar2, colname in VARCHAR) return integer is
Result integer;
begin
SELECT MAX(colname) INTO RESULT FROM tablename; return(Result);
end F_GETMAX;提示:表和视图不存在,用 execute immediate 调了半天也没弄好,那位大侠指点一下。
Result integer;
begin
execute immediate 'SELECT MAX(' || colname || ') FROM ' || tablename into result;
return(Result);
end F_GETMAX;
为刚才把into result 写到 from 前边了。