--去掉delcare --在end addsms前加 commit; exception when others then rollback;
CREATE OR REPLACE PROCEDURE AddSMS ( MSISDN IN VARCHAR2, ShortMSG IN VARCHAR2, id OUT NUMBER ) AS currentTime DATE; recver VARCHAR2(12);
id := seq_sms.nextval; currentTime := SYSDATE; recver := '5';
BEGIN INSERT INTO Receiver(ID,Recver, MSISDN, ShortMSG, CreateTime) VALUES(id,recver, MSISDN, ShortMSG, currentTime); commit; exception when others then rollback; END AddSMS;是这样子吗? 好像也有问题呀,
CREATE OR REPLACE PROCEDURE AddSMS ( MSISDN IN VARCHAR2, ShortMSG IN VARCHAR2, id OUT NUMBER ) AS
currentTime DATE; recver VARCHAR2(12);
BEGIN
select seq_sms.nextval into id from dual; currentTime := SYSDATE; recver := '5'; INSERT INTO Receiver(ID,Recver, MSISDN, ShortMSG, CreateTime) VALUES(id,recver, MSISDN, ShortMSG, currentTime); exception when others then rollback; END AddSMS; END AddSMS; 你试试这个,我没有调试!我觉得你的错误是关于赋初值的和有关序列生成器的
--在end addsms前加
commit;
exception
when others then
rollback;
(
MSISDN IN VARCHAR2,
ShortMSG IN VARCHAR2,
id OUT NUMBER
)
AS
currentTime DATE;
recver VARCHAR2(12);
id := seq_sms.nextval;
currentTime := SYSDATE;
recver := '5';
BEGIN
INSERT INTO Receiver(ID,Recver, MSISDN, ShortMSG, CreateTime)
VALUES(id,recver, MSISDN, ShortMSG, currentTime);
commit;
exception
when others then
rollback;
END AddSMS;是这样子吗?
好像也有问题呀,
(
MSISDN IN VARCHAR2,
ShortMSG IN VARCHAR2,
id OUT NUMBER
)
AS
currentTime DATE;
recver VARCHAR2(12);
BEGIN
select seq_sms.nextval into id from dual;
currentTime := SYSDATE;
recver := '5'; INSERT INTO Receiver(ID,Recver, MSISDN, ShortMSG, CreateTime)
VALUES(id,recver, MSISDN, ShortMSG, currentTime);
exception
when others then
rollback;
END AddSMS;
END AddSMS;
你试试这个,我没有调试!我觉得你的错误是关于赋初值的和有关序列生成器的