Phần này giải thích cáchECPGhoạt động nội bộ. Thông tin này đôi khi có thể hữu ích để giúp người dùng hiểu cách sử dụngECPG.
Bốn dòng đầu tiên được viết bởiECPG
với đầu ra là kèo bóng đá euro dòng cố định. Hai là nhận xét và hai là bao gồm kèo bóng đá euro dòng cần thiết để giao diện với thư viện.
Khi nhìn thấyEXEC kèo bóng đá euro
Câu lệnh, nó đã can thiệp và thay đổi nó. Lệnh bắt đầu bằngEXEC kèo bóng đá euro
và kết thúc bằng;
. Mọi thứ ở giữa được coi làkèo bóng đá euroCâu lệnh và phân tích cú pháp để thay thế kèo bóng đá euro.
Thay thế kèo bóng đá euro xảy ra khi biểu tượng bắt đầu bằng dấu hai chấm (:
). Biến với tên đó được tra cứu giữa kèo bóng đá euro biến được khai báo trước đây trong mộtexec kèo bóng đá euro khai báo
Phần.
Hàm quan trọng nhất trong thư viện làECPGDO
, chăm sóc thực thi hầu hết kèo bóng đá euro lệnh. Nó có một số lượng khác nhau của kèo bóng đá euro đối số.
kèo bóng đá euro đối số là:
Đây là số dòng của dòng gốc; Chỉ được sử dụng trong thông báo lỗi.
Đây làkèo bóng đá eurolệnh sẽ được ban hành. Nó được sửa đổi bởi kèo bóng đá euro biến đầu vào, tức là, kèo bóng đá euro biến không được biết tại thời điểm biên dịch nhưng sẽ được nhập vào lệnh.?
.
Mỗi kèo bóng đá euro đầu vào đều gây ra mười đối số được tạo. (Xem bên dưới.)
ECPGT_EOIT
ANenum
Nói rằng không còn kèo bóng đá euro đầu vào nữa.
Mỗi biến đầu ra đều gây ra mười đối số được tạo. (Xem bên dưới.) kèo bóng đá euro biến này được điền vào chức năng.
ECPGT_EORT
ANenum
nói rằng không còn kèo bóng đá euro nào nữa.
Đối với mọi kèo bóng đá euro là một phần củakèo bóng đá eurolệnh, hàm nhận được mười đối số:
Loại dưới dạng biểu tượng đặc biệt.
Một con trỏ tới giá trị hoặc con trỏ tới con trỏ.
Kích thước của kèo bóng đá euro nếu đó làChar
hoặcVarchar
.
Số lượng phần tử trong mảng (cho mảng tìm nạp).
phần bù cho phần tử tiếp theo trong mảng (cho mảng tìm nạp).
Loại của kèo bóng đá euro chỉ báo dưới dạng biểu tượng đặc biệt.
Một con trỏ tới kèo bóng đá euro chỉ báo.
0
Số lượng phần tử trong mảng chỉ báo (cho mảng tìm nạp).
phần bù cho phần tử tiếp theo trong mảng chỉ báo (cho mảng tìm nạp).
Lưu ý rằng không phải tất cả kèo bóng đá euro lệnh SQL đều được xử lý theo cách này. Chẳng hạn, một câu lệnh con trỏ mở như:
EXEC kèo bóng đá euro MỞcon trỏ
;
không được sao chép vào đầu ra. Thay vào đó, con trỏkhai báo
Lệnh được sử dụng tại vị trí củaMở
lệnh vì nó thực sự mở con trỏ.
Đây là một ví dụ hoàn chỉnh mô tả đầu ra của bộ tiền xử lý của một tệpfoo.pgc
(chi tiết có thể thay đổi với từng phiên bản cụ thể của bộ tiền xử lý):
EXEC kèo bóng đá euro bắt đầu khai báo;
được dịch thành:
/ * Được xử lý bởi ECPG (2.6.0) *//
16599_16689