После создания процедуры вставки pl/sql строки не выбраны
Я пытаюсь вставить данные в таблицу "школа", поэтому я создаю текстовый файл:
CREATE OR REPLACE PROCEDURE SCHOOL_PRO (id IN NUMBER, name IN VARCHAR2, address IN VARCHAR2, num1 IN INT, num2 IN INT, grade IN INT)
IS
BEGIN
INSERT INTO SCHOOL (ID,NAME,ADDRESS,NUM1,NUM2,GRADE) VALUES (2016001 , 'G' , 'G' , 160 , 0 , 480);
INSERT INTO SCHOOL (ID,NAME,ADDRESS,NUM1,NUM2,GRADE) VALUES (2016010 , 'H' , 'H' , 150 , 0 , 400);
INSERT INTO SCHOOL (ID,NAME,ADDRESS,NUM1,NUM2,GRADE) VALUES (2016011 , 'S' , 'S' , 150 , 0 , 528);
INSERT INTO SCHOOL (ID,NAME,ADDRESS,NUM1,NUM2,GRADE) VALUES (2016101 , 'J' , 'J' , 20 , 0 , 530);
INSERT INTO SCHOOL (ID,NAME,ADDRESS,NUM1,NUM2,GRADE) VALUES (2016110 , 'B' , 'B' , 10 , 0 , 600);
INSERT INTO SCHOOL (ID,NAME,ADDRESS,NUM1,NUM2,GRADE) VALUES (2016111 , 'Q' , 'B' , 10 , 0 , 580);
COMMIT;
END;
/
и я выполняю текстовый файл, он показывает procedure created
, но потом я выполню select * from school
и это показывает мне no rows selected
,
В чем проблема? Пожалуйста, дайте мне руку. Спасибо!
1 ответ
Решение
Ваша команда создает процедуру, но не выполняет ее, поэтому в школу ничего не вставляется. То, что вы хотите сделать, это одно из:
- Измените вашу процедуру так, чтобы она вставляла значения, заданные в качестве параметров, а затем вызывала ее для каждой вставляемой строки.
- Перенесите параметры в процедуру (не используется) и выполните процедуру после ее создания.
- Забудьте о процедуре и просто выполните команды вставки.