本人是个菜鸟,在PL里编译时碰到个PLS-00103错误,请大家帮忙找找,谢谢~~~~~~~~~~
代码如下:
create or replace procedure tlbb.TLBBStoreBuyLog
(
v_sn in tl_server_log.sn%type,
v_group_id in tl_server_log.group_id%type,
v_server_ip in tl_server_log.SERVER_IP%type,
v_server_name in tl_server_log.server_name%type,
v_word in tl_server_log.word%type,
v_server in tl_server_log.server%type,
v_scene in tl_server_log.SCENE%type,
v_cn_guid in tl_server_log.cn_guid%type,
v_buy_time in varchar2,
v_jewel_total in tl_server_log.jewel_total%type,
v_cn in tl_server_log.cn%type,
v_character_put in tl_server_log.character_put%type,
v_ip in tl_server_log.ip%type,
v_memo in tl_server_log.memo%type,
r_myReturn out number
)
ascout number(2);
errCode1 EXCEPTION;
v_substr varchar2(256);
pos number(5);
i number(5):=0;beginselect count(cn) into cout from TL_SERVER_LOG where sn=v_sn;if cout =0 then
v_substr := v_memo;
--???????????,'????? while i < 3 loop
pos := instr( v_substr, ',');
v_substr := substr( v_substr, pos+1);
dbms_output.put_line(v_substr);
i := i+1;
end loop;
--?????d
pos := instr( v_substr, ',');
v_substr := substr( v_substr,1, pos -1);INSERT INTO TL_SERVER_LOG (ID,SN,GROUP_ID,SERVER_IP,SERVER_NAME,WORD,SERVER,SCENE,CN_GUID,BUY_TIME,
JEWEL_TOTAL,CN,CHARACTER_PUT,IP,MEMO,PUT_DATE,weaponid)
VALUES(SEQ_TL_SERVER_LOG_ID.NEXTVAL,v_sn,v_group_id,v_server_ip,v_server_name,v_word,v_server,
v_scene,v_cn_guid,to_date(v_buy_time,'yyyy-mm-dd hh24:mi:ss'),v_jewel_total,v_cn,v_character_put,v_ip,v_memo,sysdate,v_substr);r_myReturn :=0;
commit;
else r_myReturn := 2;
end if;
EXCEPTION
when OTHERS then
rollback;
r_myReturn := 3; --??????end;
代码如下:
create or replace procedure tlbb.TLBBStoreBuyLog
(
v_sn in tl_server_log.sn%type,
v_group_id in tl_server_log.group_id%type,
v_server_ip in tl_server_log.SERVER_IP%type,
v_server_name in tl_server_log.server_name%type,
v_word in tl_server_log.word%type,
v_server in tl_server_log.server%type,
v_scene in tl_server_log.SCENE%type,
v_cn_guid in tl_server_log.cn_guid%type,
v_buy_time in varchar2,
v_jewel_total in tl_server_log.jewel_total%type,
v_cn in tl_server_log.cn%type,
v_character_put in tl_server_log.character_put%type,
v_ip in tl_server_log.ip%type,
v_memo in tl_server_log.memo%type,
r_myReturn out number
)
ascout number(2);
errCode1 EXCEPTION;
v_substr varchar2(256);
pos number(5);
i number(5):=0;beginselect count(cn) into cout from TL_SERVER_LOG where sn=v_sn;if cout =0 then
v_substr := v_memo;
--???????????,'????? while i < 3 loop
pos := instr( v_substr, ',');
v_substr := substr( v_substr, pos+1);
dbms_output.put_line(v_substr);
i := i+1;
end loop;
--?????d
pos := instr( v_substr, ',');
v_substr := substr( v_substr,1, pos -1);INSERT INTO TL_SERVER_LOG (ID,SN,GROUP_ID,SERVER_IP,SERVER_NAME,WORD,SERVER,SCENE,CN_GUID,BUY_TIME,
JEWEL_TOTAL,CN,CHARACTER_PUT,IP,MEMO,PUT_DATE,weaponid)
VALUES(SEQ_TL_SERVER_LOG_ID.NEXTVAL,v_sn,v_group_id,v_server_ip,v_server_name,v_word,v_server,
v_scene,v_cn_guid,to_date(v_buy_time,'yyyy-mm-dd hh24:mi:ss'),v_jewel_total,v_cn,v_character_put,v_ip,v_memo,sysdate,v_substr);r_myReturn :=0;
commit;
else r_myReturn := 2;
end if;
EXCEPTION
when OTHERS then
rollback;
r_myReturn := 3; --??????end;
解决方案 »
- PL/SQL developer如何查看表脚本
- 求救,oracle头疼问题 熬一个晚上了 没有解决(在线等)
- 新手求教!!!
- 创建数据库问题
- 我想实现动态的信息交互,但是系统报错,请大家看看错在什么地方了?
- oracle中的小于号“<”非法
- windowxp -sp2,安装oracle8 (8.1.6) 运行时出现问题
- 欢迎大家讨论Oracle9i被设置成共享服务器后,会话总是不能释放的问题
- PLSQL Developer 的注册码在那里可以找到呀,还有如何注册呀,我看不到可以注册的地方
- 一个实例下多个用户名,都有数据,怎么样才能删除用户及用户下的所有数据并且释放物理空间
- 初学Oracle 都要疯了 帮帮忙
- proc问题,兄弟们来看看
Cause: This error message is from the parser. It found a token (language element) that is inappropriate in this context.
Action: Check previous tokens as well as the one given in the error message. The line and column numbers given in the error message refer to the end of the faulty language construct.
CREATE OR REPLACE PROCEDURE TLBB.TLBBSTOREBUYLOG(V_SN IN TL_SERVER_LOG.SN%TYPE,
V_GROUP_ID IN TL_SERVER_LOG.GROUP_ID%TYPE,
V_SERVER_IP IN TL_SERVER_LOG.SERVER_IP%TYPE,
V_SERVER_NAME IN TL_SERVER_LOG.SERVER_NAME%TYPE,
V_WORD IN TL_SERVER_LOG.WORD%TYPE,
V_SERVER IN TL_SERVER_LOG.SERVER%TYPE,
V_SCENE IN TL_SERVER_LOG.SCENE%TYPE,
V_CN_GUID IN TL_SERVER_LOG.CN_GUID%TYPE,
V_BUY_TIME IN VARCHAR2,
V_JEWEL_TOTAL IN TL_SERVER_LOG.JEWEL_TOTAL%TYPE,
V_CN IN TL_SERVER_LOG.CN%TYPE,
V_CHARACTER_PUT IN TL_SERVER_LOG.CHARACTER_PUT%TYPE,
V_IP IN TL_SERVER_LOG.IP%TYPE,
V_MEMO IN TL_SERVER_LOG.MEMO%TYPE,
R_MYRETURN OUT NUMBER) AS COUT NUMBER(2);
ERRCODE1 EXCEPTION;
V_SUBSTR VARCHAR2(256);
POS NUMBER(5);
I NUMBER(5) := 0;BEGIN SELECT COUNT(CN) INTO COUT FROM TL_SERVER_LOG WHERE SN = V_SN; IF COUT = 0 THEN
V_SUBSTR := V_MEMO;
WHILE I < 3 LOOP
POS := INSTR(V_SUBSTR, ',');
V_SUBSTR := SUBSTR(V_SUBSTR, POS + 1);
DBMS_OUTPUT.PUT_LINE(V_SUBSTR);
I := I + 1;
END LOOP;
POS := INSTR(V_SUBSTR, ',');
V_SUBSTR := SUBSTR(V_SUBSTR, 1, POS - 1);
INSERT INTO TL_SERVER_LOG
(ID,
SN,
GROUP_ID,
SERVER_IP,
SERVER_NAME,
WORD,
SERVER,
SCENE,
CN_GUID,
BUY_TIME,
JEWEL_TOTAL,
CN,
CHARACTER_PUT,
IP,
MEMO,
PUT_DATE,
WEAPONID)
VALUES
(SEQ_TL_SERVER_LOG_ID.NEXTVAL,
V_SN,
V_GROUP_ID,
V_SERVER_IP,
V_SERVER_NAME,
V_WORD,
V_SERVER,
V_SCENE,
V_CN_GUID,
TO_DATE(V_BUY_TIME, 'YYYY-MM-DD HH24:MI:SS'),
V_JEWEL_TOTAL,
V_CN,
V_CHARACTER_PUT,
V_IP,
V_MEMO,
SYSDATE,
V_SUBSTR);
R_MYRETURN := 0;
COMMIT;
ELSE
R_MYRETURN := 2;
END IF;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
R_MYRETURN := 3;
END;