Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1

47.6. Ví dụ

Phần này chứa một ví dụ rất đơn giản về việc sử soi kèo bóng đá truoctranng SPI. Hàm CEXECQlấy lệnh SQL làm đối số đầu tiên và một hàng được tính là thứ hai, thực thi lệnh bằng cách sử soi kèo bóng đá truoctranngSPI_EXECvà trả về số lượng soi kèo bóng đá truoctran được xử lý theo lệnh. Bạn có thể tìm thấy các ví dụ phức tạp hơn cho SPI trong cây nguồn trongsrc/test/repress/thegress.cvà trongSPIMô -đun.

10985_12231

Đây là cách bạn khai báo chức năng sau khi biên dịch nó vào thư viện dùng chung (chi tiết trongPhần 38.10.5.):

Tạo hàm EXECQ (Text, Integer) Trả về Int8
    BẰNG 'FileName'
    Ngôn ngữ C nghiêm ngặt;

Đây là phiên mẫu:

= Chọn Execq ('Tạo Bảng A (x số nguyên)', 0);
 EXECQ
-------
     0
(1 soi kèo bóng đá truoctran)

= Chèn vào một giá trị (exec ('chèn vào một giá trị (0)', 0));
Chèn 0 1
= Chọn Execq ('Chọn * từ A', 0);
Thông tin: Execq: 0- Được chèn bởi execINFO: Execq: 113114_13165Execq
-------
     2
(1 soi kèo bóng đá truoctran)

= Chọn Execq ('Chèn vào một chọn x + 2 từ một lần trả về *', 1);
Thông tin: Execq: 2- 0 + 2, sau đó việc thực thi đã bị dừng bằng cách đếmExecq
-------
     1
(1 soi kèo bóng đá truoctran)

= Chọn Execq ('Chọn * từ A', 10);
Thông tin: Execq: 0
Thông tin: Execq: 1
Thông tin: Execq: 2

 EXECQ
-------
     3- 10 chỉ là giá trị tối đa, 3 là số thực của soi kèo bóng đá truoctran(1 soi kèo bóng đá truoctran)

= Chọn Execq ('Chèn vào A Chọn x + 10 từ A', 1);
 EXECQ
-------
     3- Tất cả các soi kèo bóng đá truoctran được xử lý; Đếm không dừng nó, vì không có gì được trả lại(1 soi kèo bóng đá truoctran)

= Chọn * từ a;
 x
----
  0
  1
  2
 10
 11
 12
(6 soi kèo bóng đá truoctran)

= Xóa khỏi a;
Xóa 6
= Chèn vào một giá trị (Execq ('select * từ a', 0) + 1);
Chèn 0 1
= Chọn * từ a;
 x
---
 1- 0 (không có soi kèo bóng đá truoctran trong a) + 1(1 soi kèo bóng đá truoctran)

= Chèn vào một giá trị (Execq ('select * từ a', 0) + 1);
Thông tin: Execq: 1
Chèn 0 1
= Chọn * từ a;
 x
---
 1
 2- 1 (có một soi kèo bóng đá truoctran trong a) + 1(2 soi kèo bóng đá truoctran)- Điều này thể hiện quy tắc hiển thị thay đổi dữ liệu.
14711_14783= Chèn vào một exec soi kèo bóng đá truoctran ('select * từ a', 0) * x từ a;
Thông tin: Execq: 1- Kết quả từ EXECQ đầu tiênThông tin: Execq: 2
Thông tin: Execq: 1- Kết quả từ EXECQ thứ haiThông tin: Execq: 2
Thông tin: Execq: 2
Chèn 0 2
= soi kèo bóng đá truoctran * từ a;
 x
---
 1
 2
 2- 2 soi kèo bóng đá truoctran * 1 (x ở soi kèo bóng đá truoctran đầu tiên)
 6                  - 3 soi kèo bóng đá truoctran (2 + 1 vừa được chèn) * 2 (x trong soi kèo bóng đá truoctran thứ hai)(4 soi kèo bóng đá truoctran)

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không phù hợp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử soi kèo bóng đá truoctranngMẫu nàyĐể báo cáo vấn đề tài liệu.