编译登记表
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;