Giao diện ngụn ngữ chủ /SQL

Một phần của tài liệu Giáo trình Ngôn ngữ SQL doc (Trang 98 - 99)

CHƯƠNG III : LẬP TRèNH

3.1.2 Giao diện ngụn ngữ chủ /SQL

Việc truyền thụng tin giữa cơ sở dữ liệu (chỉ cú thể được truy cập bởi những cõu lệnh SQL) và chương trỡnh ngụn ngữ chủ thụng qua những biến của ngụn ngữ chủ, gọi là cỏc biến dựng chung. Những biến này cú thể được cỏc cõu lệnh SQL đọc hoặc ghi. Tất cả những biến dựng chung (shared variable) như vậy cú một dấu hai chấm đi trước khi chỳng được tham chiếu

đến trong một cõu lệnh SQL, nhưng chỳng xuất hiện khụng cú dấu hai chấm trong những cõu lệnh ngụn ngữ chủ.

Khi chỳng ta muốn sử dụng một cõu lệnh SQL trong một chương trỡnh ngụn ngữ chủ, chỳng ta phải đặt cỏc từ khúa EXEC SQL ở trước nú. Một hệ thống điển hỡnh sẽ tiền xử lý những cõu lệnh đú và thay thế chỳng bởi những lời gọi hàm phự hợp trong ngụn ngữ chủ, tạo ra việc sử dụng một thư viện cỏc hàm SQL cú liờn quan.

Ngôn ngữ chủ + SQL nhúng Bo tien xu ly Ngôn ngữ chủ + Lời gọi hàm Bộ biên dịch ngôn ngữ chủ Chương trỡnh đớch Thư viện SQL

Hình 3.1: Việc xử lý các chương trình với các câu lệnh SQL nhúng

Một biến đặc biệt, được gọi là SQLSTATE trong SQL chuẩn, phục vụ kết nối chương trỡnh ngụn ngữ chủ với hệ thống thực hiện SQL. Kiểu SQLSTATE là một mảng năm ký tự. Mỗi khi một hàm của thư viện SQL được gọi, một mó được đặt vào trong biến SQLSTATE chỉ ra những vấn đề bất kỳ được tỡm thấy trong suốt quỏ trỡnh gọi đú. SQL chuẩn định rừ một lượng lớn những mó năm ký tự và ý nghĩa của chỳng. Vớ dụ, ‘00000’ (năm số khụng) chỉ ra rằng tỡnh trạng khụng lỗi xảy ra, và ‘02000’ chỉ ra rằng khụng tỡm thấy bộ giỏ trị được yờu cầu. Chỳng ta sẽ thấy rằng mó ‘02000’ rất quan trọng, vỡ nú cho phộp chỳng ta tạo một vũng lặp trong chương trỡnh ngụn ngữ chủ kiểm tra lần lượt cỏc bộ của một quan hệ và phỏ bỏ vũng lặp sau khi bộ cuối cựng đó được kiểm tra. Chương trỡnh ngụn ngữ chủ cú thể đọc được giỏ trị của SQLSTATE và đưa một quyết định dựa trờn cơ sở giỏ trị tỡm được đú.

Một phần của tài liệu Giáo trình Ngôn ngữ SQL doc (Trang 98 - 99)

Tải bản đầy đủ (PDF)

(177 trang)