誰もが、学生テーブルからレコードを削除しない理由を知っています。テーブルが空で、最初に匿名ブロックを実行すると正常に実行されますが、再度実行すると重複する主キーについてエラーが発生しますが、ブロックを実行するたびにすべてのレコードを削除する必要がありますテーブル??私はSQLに比較的新しいので、どんな助けもありがたいです。deleteステートメントレコードを削除しない
私はコードを実行するとdoplが表示されるので、手順をうまくいくように見えるはずです。
これは私の関数である:
CREATE OR REPLACE FUNCTION DELETE_ALL_STUDENTS RETURN NUMBER AS
BEGIN
DELETE FROM STUDENTS;
END;
、これは私の手順です:
create or replace PROCEDURE DELETE_ALL_STUDENTS_VIASQLDEV AS
BEGIN
dbms_output.put_line('--------------------------------------------');
dbms_output.put_line('Deleting all student rows');
END;
、これは私はそれが働いたかどうかを確認するために実行していた無名ブロックである:
begin
DELETE_ALL_STUDENTS_VIASQLDEV;
ADD_STUDENT_VIASQLDEV(1,'Fred Smith');
ADD_STUDENT_VIASQLDEV(2,'Sue Davis');
ADD_STUDENT_VIASQLDEV(3,'Emma Jones');
end;
あなたが投稿した 'DELETE_ALL_STUDENTS_VIASQLDEV'のバージョンは何も削除しません。ちょうど出力を表示します。 – APC
私の機能は削除を実行しませんか?どうすればこの問題を解決できますか? –