Bài giảng HQT Cơ sở liệu (ORACLE) Số tc: 3; LT: 25; Btập: 20 GV: Nguyễn Thị Mỹ Dung Khối lớp: Đại học L2 NỘI DUNG MÔN HỌC Chương 2: Cơ Oracle (2) Chương 1: Tổng quan Oracle (2) Chương 3: Truy vấn SQL (12) Chương 4: Lập trình PL/SQL (9) Chương 5: Procedure, Trigger, Function (12) Chương 6: Quản trị người dùng (4) Chương 7: Kết nối CSDL với Oracle (4) Chương 4: Lập trình PL/SQL I Cấu trúc chương trình PL/SQL II Các kiểu liệu PL/SQL III Các kiểu liệu phức tạp IV Các loại mệnh đề V Cấu trúc điều khiển VI Kiểu trỏ VII Bài tập thực hành I Cấu trúc chương trình PL/SQL Giới thiệu PL/SQL (Procedural Language/Structured Query Language) ngôn ngữ lập trình lập trình hướng thủ tục sử dụng cho Oracle SQL PL/SQL kết hợp SQL khai báo số, biến, cấu trúc điều khiển, thủ tục, hàm, bẫy lỗi kiện, thao tác trỏ, xử lý giao tác… Mọi thứ lưu trữ DB tái sử dụng ứng dụng giao tiếp với ứng dụng Oracle Từ phiên trở sau có thêm tính hướng đối tượng Cấu trúc PL/SQL – giới thiệu(tt) - Mỗi lệnh SQL kết thúc dấu chấm phẩy (;) - PL/SQL tổ chức theo khối lệnh (block), khối lệnh lồng Các biến khai báo nội (local) bên khối điền khiển báo lỗi bên khối nơi lỗi phát sinh - Một block bao gồm ba phần: phần khai báo nơi để khai báo biến, phần thi hành lệnh phần xử lý ngoại lệ (điều kiện lỗi cảnh báo) - Khai báo biến PROCEDURE hay FUNCTION: Block (đầu tiên) PROCEDURE, FUNCTION khơng dùng từ khóa DECLARE (Ngược lại với TRIGGER, Block ngồi (đầu tiên) phải có DECLARE) Cấu trúc PL/SQL (tt) Cấu trúc PL/SQL - Block Các khai báo biến Block (Declarations) BEGIN Các câu lệnh thực (Executable Statements) DECLARE /*Phần Khai báo biến Block 2*/ - Block Các khai báo biến Block (Declarations) BEGIN Các câu lệnh thực (Executable Statements) EXCEPTION Các xử lý ngoại lệ (Exception Handlers) /*làm lỗi xuất bên Block 2*/ END; - End Block EXCEPTION Các xử lý ngoại lệ (Exception Handlers) END; - End Block Cấu trúc PL/SQL- VD (tt) declare x SINHVIEN.MASV%type; y SINHVIEN.HOTENSV%type; Lưu ý: begin Chạy lệnh select MASV, HOTENSV SET SERVEROUTPUT ON SQL*Plus trước into x,y Lúc lệnh DBMS_OUTPUT.PUT_LINE… from SINHVIEN có hiệu lực in text “…….” where MASV='SV001'; hình dbms_output.put_line ('Ma SV:' || x || ' - Ho ten SV:' || y); end; II Kiểu liệu PL/SQL Các kiểu liệu sau: - BINARY_INTEGER: từ -231 đến 231-1 - NUMBER [(precision, scale)]: precision