oracle生成insert语句的存储过程怎么写
1个回答
推荐于2016-12-06 · 知道合伙人软件行家
Axure夜话
知道合伙人软件行家
向TA提问 私信TA
知道合伙人软件行家
采纳数:1197
获赞数:1344
1992年毕业于太原理工大学,20年IT公司工作经验现任山西誉海和科技有限公司技术总监,老二牛车教育课程总监
向TA提问 私信TA
关注
展开全部
参考代码:
包stuPack添加代码如下:
PROCEDURE usp_InsertStudent (
vage NUMBER,vstuName VARCHAR2);
包stuPack的程序包主体添加代码如下
PROCEDURE usp_InsertStudent (
vage NUMBER,vstuName VARCHAR2) As
BEGIN
INSERTINTOSTUDENT(stuName,age)
VALUES(vstuName,vage);
END;
主键自增方案:
create sequencestuSeq;
CREATEORREPLACETRIGGER stu_TRG
BEFOREINSERTORUPDATEOF stuID
ON Student
FOREACHROW
BEGIN
IF INSERTING THEN
SELECT stuSeq.NEXTVAL INTO :NEW.stuID FROM DUAL;
ELSE
RAISE_APPLICATION_ERROR(-20020, '不允许更新stuID值!');
ENDIF;
包stuPack添加代码如下:
PROCEDURE usp_InsertStudent (
vage NUMBER,vstuName VARCHAR2);
包stuPack的程序包主体添加代码如下
PROCEDURE usp_InsertStudent (
vage NUMBER,vstuName VARCHAR2) As
BEGIN
INSERTINTOSTUDENT(stuName,age)
VALUES(vstuName,vage);
END;
主键自增方案:
create sequencestuSeq;
CREATEORREPLACETRIGGER stu_TRG
BEFOREINSERTORUPDATEOF stuID
ON Student
FOREACHROW
BEGIN
IF INSERTING THEN
SELECT stuSeq.NEXTVAL INTO :NEW.stuID FROM DUAL;
ELSE
RAISE_APPLICATION_ERROR(-20020, '不允许更新stuID值!');
ENDIF;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询