要求用户可以插入用户指定个数的多个no,name信息。
求大神指导!谢谢!
æå
¥å 个ç¨æ·æå®çæ°æ®ä¸è¬é½æ¯å¨ç¨åºä¸æ§å¶çï¼æ¯å¦ç¨æ·æå®n个çæ¶å
forï¼int i=0; i < n; i++ï¼
{
//è°ç¨åå¨è¿ç¨æå ¥ç¬¬i个æ°æ®
callProcedure(data[i].no, data[i].name);
}
åå¨è¿ç¨å建çè¯ï¼æä¸ç¥éä½ ç¨ä»ä¹æ°æ®åºï¼æ就以oracle为ä¾ï¼å ¶ä»æ°æ®åºé½æ¯å·®ä¸å¤çä½ æ¹æ¹å°±è¡
CREATE OR REPLACE PROCEDURE test_proc(p_no IN CHAR, p_name IN VARCHAR)
IS
BEGIN
INSERT into JL(no, name) values(p_no, p_name);
COMMIT;
END test_proc;
/追é®
forï¼int i=0; i < n; i++ï¼
{
//è°ç¨åå¨è¿ç¨æå ¥ç¬¬i个æ°æ®
callProcedure(data[i].no, data[i].name);
}
åå¨è¿ç¨å建çè¯ï¼æä¸ç¥éä½ ç¨ä»ä¹æ°æ®åºï¼æ就以oracle为ä¾ï¼å ¶ä»æ°æ®åºé½æ¯å·®ä¸å¤çä½ æ¹æ¹å°±è¡
CREATE OR REPLACE PROCEDURE test_proc(p_no IN CHAR, p_name IN VARCHAR)
IS
BEGIN
INSERT into JL(no, name) values(p_no, p_name);
COMMIT;
END test_proc;
/追é®
好å§ï¼è°¢è°¢ï¼æè¿æ³è¯·é®ï¼å¯ä¸å¯ä»¥å¨ä¸ä¸ªåå¨è¿ç¨éå°±å®ç°æå ¥æå®ä¸ªæ°çä¿¡æ¯ï¼æ¯å¦è°ç¨ä¸é¢é£ä¸ªç¨æ¥æå ¥çåå¨è¿ç¨ãå ¶å®å¨è¿éé¢ä¹åçä¸ä¸é¢å°±æ¯åä¸ä¸ªç¨æ¥æå ¥çåå¨è¿ç¨ï¼è·ä¸é¢çä¸æ ·= =
追çå¦ææ¯æ¬¡æå ¥ç个æ°å¨ååçè¯ï¼è²ä¼¼ç¨åå¨è¿ç¨ä¸è¡é¢
温馨提示:答案为网友推荐,仅供参考
第1个回答 2012-12-17
插入多个就调用多次么。 test_proc(p_no,p_name). 你如果要在存过里面实现,可以再加个入参做循环。
CREATE OR REPLACE PROCEDURE test_proc(p_no IN CHAR, p_name IN VARCHAR,v_i in number)
IS
i number;
BEGIN
i :=v_i;
for i >0 loop
INSERT into JL(no, name) values(p_no, p_name);
COMMIT;
i:= i-1;
end loop ;
END test_proc;
/
CREATE OR REPLACE PROCEDURE test_proc(p_no IN CHAR, p_name IN VARCHAR,v_i in number)
IS
i number;
BEGIN
i :=v_i;
for i >0 loop
INSERT into JL(no, name) values(p_no, p_name);
COMMIT;
i:= i-1;
end loop ;
END test_proc;
/
第2个回答 2012-12-12
除非你的no和name信息有规律、否则只能插重复的或者不重复的一个