編譯登記表
1. 編譯登記 有什麼用
編譯登記,作用是在後面編譯過程中可校對遺漏問題。
登記,把有關事項寫在特備的表冊上以備查考。
編譯程序(Compiler,compiling program)也稱為編譯器,是指把用高級程序設計語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序。
編譯(compilation , compile)
1、利用編譯程序從源語言編寫的源程序產生目標程序的過程。
2、用編譯程序產生目標程序的動作。 編譯就是把高級語言變成計算機可以識別的2進制語言,計算機只認識1和0,編譯程序把人們熟悉的語言換成2進制的。
編譯程序把一個源程序翻譯成目標程序的工作過程分為五個階段:詞法分析;語法分析;語義檢查和中間代碼生成;代碼優化;目標代碼生成。主要是進行詞法分析和語法分析,又稱為源程序分析,分析過程中發現有語法錯誤,給出提示信息。
編譯語言是一種以編譯器來實現的編程語言。它不像直譯語言一樣,由解釋器將代碼一句一句運行,而是以編譯器,先將代碼編譯為機器碼,再加以運行。理論上,任何編程語言都可以是編譯式,或直譯式的。它們之間的區別,僅與程序的應用有關。
2. Oracle瀛樺偍榪囩▼鐨勯
澹版槑錛氫互涓嬩唬鐮佹病緇忚繃涓ュ瘑嫻嬭瘯錛屽彧鏄緙栬瘧閫氳繃錛宐ooks琛ㄦ槸鐧昏拌〃錛宐ook_kind鏄鍒嗙被琛錛屽洜涓轟笉鐭ラ亾璇︾粏鐜澧冿紝鎵浠ュ啓鐨勯夯鐑︿簡涓鐐
CREATE OR REPLACE PROCEDURE Pro_Book_Test IS
--浜岀駭涓虹┖鐨勬父鏍
CURSOR Vc_Book_s IS
SELECT * FROM Books b WHERE b.Sec_Id IS NULL;
--涓綰т負絀虹殑娓告爣
CURSOR Vc_Book_f IS
SELECT * FROM Books b WHERE b.Fir_Id IS NULL;
Vr_Book Books%ROWTYPE;
v_Id VARCHAR2(5);
BEGIN
OPEN Vc_Book_s();
LOOP
FETCH Vc_Book_s
INTO Vr_Book;
EXIT WHEN Vc_Book_s%NOTFOUND OR Vc_Book_s%NOTFOUND IS NULL;
--鏍規嵁涓夌駭鏌ュ嚭浜岀駭
SELECT k.Par_Id
INTO v_Id
FROM Book_Kind k
WHERE k.Kind_Id = Vr_Book.Thi_Id;
--鏇存柊鍒扮櫥璁拌〃浜岀駭涓
UPDATE Books b SET b.Sec_Id = v_Id WHERE b.Book_Id = Vr_Book.Book_Id;
COMMIT;
END LOOP;
CLOSE Vc_Book_s;
OPEN Vc_Book_f();
LOOP
FETCH Vc_Book_f
INTO Vr_Book;
EXIT WHEN Vc_Book_f%NOTFOUND OR Vc_Book_f%NOTFOUND IS NULL;
--鏍規嵁浜岀駭鏌ヤ竴綰
SELECT k.Par_Id
INTO v_Id
FROM Book_Kind k
WHERE k.Kind_Id = Vr_Book.Sec_Id;
--鐧昏拌〃涓綰т笂
UPDATE Books b SET b.Fir_Id = v_Id WHERE b.Book_Id = Vr_Book.Book_Id;
COMMIT;
END LOOP;
CLOSE Vc_Book_f;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
Raise_Application_Error(-20000, '閿欒' || SQLCODE || SQLERRM);
END Pro_Book_Test;