好奇怪的问题,大家帮我看看~

[复制链接]
查看11 | 回复2 | 2005-2-28 12:57:00 | 显示全部楼层 |阅读模式
我建立一个存储过程
create or replace procedure p_custuser(iscust in varchar2,mobile in varchar2,lmda in varchar2) as
p_sql varchar2(1000);
v_lmda varchar2(12);
begin
v_lmda:='fzxw';--lower(lmda);
if iscust='1' then
p_sql:='insert into '||lower(lmda)||'_custuserinfo values('||mobile||',sysdate)';
execute immediate p_sql;
p_sql:='insert into custuser(mobile,subjectcode,iscust,custtime) values('||mobile||','||v_lmda||',''1'',sysdate)';
execute immediate p_sql;
end if;
--p_sql:='insert into log values('||mobile||',sysdate)';
--execute immediate p_sql;
end p_custuser;

我执行它,begin p_custuser('1','10150998180','fzxw'); end;
提示出错!
ORA-00984: 列在此处不允许
ORA-06512: 在"P_CUSTUSER", line 11
ORA-06512: 在line 1
如果我把它改成begin p_custuser('1','10150998180','1111'); end;
就可以执行成功,改成数字就可以执行成功,而如果是11cc,数字加英文竟然提示缺少逗号~~
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
p_sql:='insert into custuser(mobile,subjectcode,iscust,custtime) values('||mobile||','||''''||v_lmda||''''||',''1'',sysdate)';
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
谢谢biti
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行