QUI ĐỊNH ĐẶT TÊN TRONG ORACLE 1. TRIGGER : - Đối với trigger có từng thao tác riêng biệt là insert, update, delete thì cách đặt tên là thao tác nào thì tên trigger bắt đầu bằng 3 chữ của thao tác đó . VD : insert thì INS_ Update thì UPD_ Delete thì DEL_ - Đối với trigger có từ 2 thao tác trở lên thì đặt tên chung là TRI_ Trigger thao tác trên bảng nào thì lấy bảng đó làm tên của trigger . VD : trigger insert vào table Đơn đặt hang ,…. : INS_DON_DAT_HANG . Trigger insert, update, delete trên table tồn kho thì : TRI_TON_KHO . 2. PROCEDURE AND FUNCTION : - Cách đặt tên procedure : PRO_tablename (parameter) or PRO_name( ) - Cách đặt tên function : FUN_name (parameter). Chú ý : Đối với những procedure, function là PRO_name(), FUN_name() thì tên sẽ được đặt thống nhất do người leader chương trình đó qui định . Nếu có nhiều người cùng viết một procedure hay function thì đặt thêm tên của mình vào cuối . (VD : PRO_ORDM_LIEN, PRO_ORDM_LONG,…) . 3. QUI ĐỊNH VỀ BIẾN , THAM SỐ VÀ CURSOR : - Biến : thì chữ bắt đầu là v (VD : v_Fact_No ) - Tham số in, out : thì chữ bắt đầu là p ( VD: p_Comp_No) - Cursor : thì chữ bắt đầu là : c (VD: c_Count ). Chú ý : phải viết hoa những chữ bắt đầu tên của các trường trong CSDL . Tên biến và tên trường phải tương úng với nhau như sau : Field Fact_No biến là v_Fact_No . Field Pnl_No thì biến là v_Pnl_No . 4. QUI ĐỊNH VỀ CÁCH TRÌNH BÀY : Tên của các trigger, procedure, function đều phải viết hoa . - định nghĩa biến phải thẳng hang và cách lề trái 1 tab VD : v_Fact_No Fact.Fact_No%type; v_Fact_Name Fact.Fact_Name%type; v_Fact_Nm Fact.Fact_Nm%type; - Đối với câu lệnh truy vấn : SELECT Fact_No, Fact_Name, Fact_Nm FROM Fact WHERE Fact_No = v_Fact_No AND Comp_No = v_Comp_No; - Đối với câu lệnh if , cursor, …. If v_Count > 0 Then Dbms_output.put_line(‘Có dữ liệu .’) v_Sum := v_Sum + v_Qty ; Elseif ………. Then Dbms_output.put_line(‘Không có dữ liệu .’); v_Sum := 0 ; Else ………… End If; ****************************** OPEN c_Cur1; LOOP FETCH c_Cur1 INTO v_Count; EXIT WHEN c_Cur1%notfound; Dbms_output.Put_line(v_Count); …. …. …. END LOOP; CLOSE c_Cur1; - Tất cả các dòng lệnh trong BEGIN ….END đều cách lề trái 1 Tab . - Phải có chú thích rõ rang ở những dòng lệnh cursor, tính toán, điều kiện phức tạp . 5. QUI ĐỊNH VẼ LƯU ĐỒ : - Cách đặt tên lưu đồ : tên lưu đồ là tên của trigger, procedure, function tương ứng . - Qui cách vẽ lưu đồ : Bắt đầu và kết thúc của lưu đồ . Tham số truyền vào procedure, function . Điều kiện if, else . Xử lý bên trong chương trình or lệnh if or cursor . Start End p_Date v_Sum := 0; Điểm nối giữa 2 trang . Message thông báo lỗi . … … Vòng lặp loop cursor, for, while, … Nối giữa các hình hay đường đi của lưu đồ * Note : Trình bày càng rõ rang, trật tự, ngăn ngắn thì tốt hơn . A error End loop Loop MẪU LƯU ĐỒ : Project System LC Trigger name Action TRI_INVOICE Name Vo Thi Lien Date 2002/10/19 File name TRI_INVOICE.vsd Contents LC Insert or update or delete Start END get v_trace_amt from VENDER get v_remain_amt from LCISSUE when inserting or updating or deleting on table INVOICE , testing LC_BALANCE - INV_AMT . Updating table LCISSUE with field REMAIN_AMT. Updating table VENDER with field TRADE_AMT . if Insert or delete or update v_lc_balance - v_inv_amt < 0 get v_lc_no,v_ven_no,v_inv_amt, v_lc_balance, v_over_amt from INVOICE v_remain_amt := v_remain_amt - v_inv_amt v_remain_amt := 0 v_trade_amt := v_trade_amt + v_inv_amt Update LCISSUE OF remain_amt With lc_no ; Update VENDER OF trade_amt With Ven_no ; Y N . QUI ĐỊNH ĐẶT TÊN TRONG ORACLE 1. TRIGGER : - Đối với trigger có từng thao tác riêng biệt là insert, update, delete thì cách đặt tên là thao tác nào thì tên trigger bắt đầu. chữ bắt đầu tên của các trường trong CSDL . Tên biến và tên trường phải tương úng với nhau như sau : Field Fact_No biến là v_Fact_No . Field Pnl_No thì biến là v_Pnl_No . 4. QUI ĐỊNH VỀ CÁCH. dòng lệnh trong BEGIN ….END đều cách lề trái 1 Tab . - Phải có chú thích rõ rang ở những dòng lệnh cursor, tính toán, điều kiện phức tạp . 5. QUI ĐỊNH VẼ LƯU ĐỒ : - Cách đặt tên lưu đồ : tên lưu