发布网友 发布时间:2022-04-25 15:41
共4个回答
热心网友 时间:2022-04-08 05:49
用mysql的存储过程来实现就可以:追答mysql的存储过程没写过,给你个Oracle版本的你参考着写吧,格式都差不多,这里面ITS_KK是我oracle的用户名,getUserId是这个procere的名字,其中strYhdm是存储过程中所用到的输入参数,你这儿可能得写俩参数,一个是学号一个是答案信息,具体类型看你数据要求,至于这里的out_ret是输出参数,是你存储过程中产生的值,一般用来在程序里利用这个值来判断输入的成功与否或者进行其他的判断操作。你这里加不加就看你自己需要了
gid_temp varchar2(7);
mid_temp number;
这俩是临时变量,用来存储中间计算出来的值,其他还有看不懂的再问吧
CREATE OR REPLACE PROCEDURE ITS_KK.getUserId(
strYhdm in varchar,
out_ret out Integer
) IS
gid_temp varchar2(7);
mid_temp number;
BEGIN
SELECT gid INTO gid_temp FROM VIO_GROUPUSER WHERE yid=strYhdm;
IF(gid_temp=NULL) THEN
out_ret :=2;
ELSE
SELECT count(mid) INTO mid_temp FROM VIO_GROUPMENU WHERE gid=gid_temp and mid='0104';
IF(mid_temp=0) THEN
out_ret := 2;
ELSE
out_ret :=1;
END IF;
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
NULL;
WHEN OTHERS THEN
RAISE;
END getUserId;
/
热心网友 时间:2022-04-08 07:07
你可以这样的思路来实现。热心网友 时间:2022-04-08 08:42
这个用 DBLINK 加上 触发器的脚本 就可以了。热心网友 时间:2022-04-08 10:33
CREATE OR REPLACE PROCEDURE ITS_KK.getUserId(