新手写的一个oracle存储过程,求大神来改改错误
createorreplacePROCEDUREUSER_UPDATE(useridxinvarchar2,username1INVARCHAR2,userpwd1INV...
create or replace PROCEDURE USER_UPDATE (useridx in varchar2 ,username1 IN VARCHAR2 ,userpwd1 IN VARCHAR2 ,SAMEX OUT NUMBER ) AS BEGIN IF SELECT USERNAME FROM TB_USER username=username1 THEN SAMEX :=1 ; ELSE UPDATE TB_USER SET username=username1,userpwd=userpwd1 WHERE userid=useridx; SAMEX :=0 ; END IF; commit; END USER_UPDATE;
create or replace
PROCEDURE USER_UPDATE
(useridx in varchar2
,username1 IN VARCHAR2
,userpwd1 IN VARCHAR2
,SAMEX OUT NUMBER
)
AS
BEGIN
IF SELECT USERNAME FROM TB_USER username=username1 THEN
SAMEX :=1 ;
ELSE
UPDATE TB_USER SET username=username1,userpwd=userpwd1
WHERE userid=useridx;
SAMEX :=0 ;
END IF;
commit;
END USER_UPDATE; 展开
create or replace
PROCEDURE USER_UPDATE
(useridx in varchar2
,username1 IN VARCHAR2
,userpwd1 IN VARCHAR2
,SAMEX OUT NUMBER
)
AS
BEGIN
IF SELECT USERNAME FROM TB_USER username=username1 THEN
SAMEX :=1 ;
ELSE
UPDATE TB_USER SET username=username1,userpwd=userpwd1
WHERE userid=useridx;
SAMEX :=0 ;
END IF;
commit;
END USER_UPDATE; 展开
1个回答
展开全部
这样试试
create or replace PROCEDURE USER_UPDATE
(useridx in varchar2 ,
username1 IN VARCHAR2,
userpwd1 IN VARCHAR2,
SAMEX OUT NUMBER)
AS
v_count int;
BEGIN
SELECT count(*) into v_count FROM TB_USER username=username1;
IF v_count>0 THEN
SAMEX :=1 ;
ELSE
UPDATE TB_USER SET username=username1,userpwd=userpwd1
WHERE userid=useridx;
SAMEX :=0 ;
END IF;
commit;
END USER_UPDATE;
追问
Error(10,1): PL/SQL: SQL Statement ignored
Error(10,51): PL/SQL: ORA-00933: SQL 命令未正确结束
还是不行啊
今至电子科技有限公司
2024-08-23 广告
2024-08-23 广告
数据库备份是确保数据安全与业务连续性的关键环节。我们上海今至电子科技有限公司高度重视数据保护,定期执行全面的数据库备份策略。这包括使用先进工具和技术,对关键业务数据进行自动化备份,并存储在安全可靠的外部存储介质或云端。通过定期验证备份的完整...
点击进入详情页
本回答由今至电子科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询