Phiên bản không được hỗ trợ:7.0
Tài liệu này dành cho phiên bản không được hỗ trợ tỷ lệ kèo bóng đá tối nay PostgreSQL.
Bạn có thể muốn xem cùng tỷ lệ kèo bóng đá tối nay trang chohiện tạiPhiên bản hoặc một trong tỷ lệ kèo bóng đá tối nay phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

tỷ lệ kèo bóng đá tối nayMô tả

Cấu trúc tỷ lệ kèo bóng đá tối nay PL/PGSQL

​​Ngôn ngữ PL/PGSQL không nhạy cảm. Tất cả tỷ lệ kèo bóng đá tối nay từ khóa và Định danh có thể được sử dụng ở phần trên và chữ thường hỗn hợp.

PL/PGSQL là ngôn ngữ định hướng khối. tỷ lệ kèo bóng đá tối nay khối được xác định là

[<< Nhãn ]
[TUYÊN BỐKhai báo]
BẮT ĐẦUcâu tỷ lệ kèo bóng đá tối naynhend;

Có thể có bất kỳ số lượng phụ nào trong phần tuyên bố của một khối. Subblocks có thể được sử dụng để ẩn tỷ lệ kèo bóng đá tối nay biến từ bên ngoài khối của tỷ lệ kèo bóng đá tối nay tuyên bố. tỷ lệ kèo bóng đá tối nay biến được khai báo trong tỷ lệ kèo bóng đá tối nay khai báo Phần trước một khối được khởi tạo thành tỷ lệ kèo bóng đá tối nay giá trị mặc định của chúng Mỗi khi khối được nhập, không chỉ một lần trên mỗi hàm gọi.

Điều quan trọng là không hiểu sai ý nghĩa của bắt đầu/kết thúc để nhóm tỷ lệ kèo bóng đá tối nay câu lệnh trong PL/PGSQL và tỷ lệ kèo bóng đá tối nay lệnh cơ sở dữ liệu cho Kiểm soát giao dịch. tỷ lệ kèo bóng đá tối nay chức năng và quy trình kích hoạt không thể bắt đầu hoặc giao dịch cam kết vàPostgreskhông được lồng giao dịch.

bình luận

6461_6820

Khai báo

Tất cả tỷ lệ kèo bóng đá tối nay biến, hàng và bản ghi được sử dụng trong một khối hoặc nó Subblocks phải được khai báo trong phần khai báo của một khối Ngoại trừ biến vòng lặp của vòng lặp vòng lặp trên một phạm vi của tỷ lệ kèo bóng đá tối nay giá trị số nguyên. tỷ lệ kèo bóng đá tối nay tham số được cung cấp cho hàm PL/PGSQL là Tự động khai báo với số nhận dạng thông thường $ n. tỷ lệ kèo bóng đá tối nay Khai báo có cú pháp sau:

tên[hằng số]TYP[không phải null] [Mặc định | : =giá trị];

Khai báo một biến của loại cơ sở được chỉ định. Nếu Biến được khai báo là hằng số, giá trị không thể thay đổi. Nếu không được chỉ định NULL, việc gán kết quả giá trị null trong một lỗi thời gian chạy. Vì giá trị mặc định của tất cả tỷ lệ kèo bóng đá tối nay biến là TheSQLgiá trị null, tất cả tỷ lệ kèo bóng đá tối nay biến được khai báo là không null cũng phải có giá trị mặc định được chỉ định.

Giá trị mặc định được đánh giá bao giờ hết chức năng gọi điện. Vì vậy, việc gán 'Bây giờ' đến a Biến thuộc loạiDateTimekhiến biến có thời gian tỷ lệ kèo bóng đá tối nay hàm thực tế gọi, không phải khi chức năng được biên dịch trước mã byte.

tên class%RowType;

8310_8908

tỷ lệ kèo bóng đá tối nay trường của RowType kế thừa tỷ lệ kèo bóng đá tối nay bảng tỷ lệ kèo bóng đá tối nay trường hoặc Độ chính xác cho char (), v.v.

tênRecord;

Bản ghi tương tự như RowTypes, nhưng chúng không có được xác định trước kết cấu. Chúng được sử dụng trong tỷ lệ kèo bóng đá tối nay lựa chọn và cho tỷ lệ kèo bóng đá tối nay vòng để giữ Một hàng cơ sở dữ liệu thực tế từ một hoạt động chọn. Một và The Cùng một hồ sơ có thể được sử dụng trong tỷ lệ kèo bóng đá tối nay lựa chọn khác nhau. Truy cập a bản ghi hoặc cố gắng gán giá trị cho trường bản ghi khi Không có hàng thực tế nào trong đó dẫn đến lỗi thời gian chạy.

tỷ lệ kèo bóng đá tối nay hàng mới và cũ trong trình kích hoạt được đưa ra cho thủ tục như hồ sơ. Điều này là cần thiết bởi vì trongPostgresMột và cùng một kích hoạt Quy trình có thể xử lý tỷ lệ kèo bóng đá tối nay sự kiện kích hoạt cho tỷ lệ kèo bóng đá tối nay bảng khác nhau.

tênbí danh cho $ n;

Để có khả năng đọc tốt hơn của mã, có thể xác định Bí danh cho tham số vị trí thành tỷ lệ kèo bóng đá tối nay hàm.

Bí danh này được yêu cầu cho tỷ lệ kèo bóng đá tối nay loại tổng hợp được đưa ra là đối số cho một chức năng. Ký hiệu chấm $ 1.Salary như trong SQL tỷ lệ kèo bóng đá tối nay chức năng không được phép trong PL/PGSQL.

Đổi tênOldNameđếnnewName;

Thay đổi tên của tỷ lệ kèo bóng đá tối nay biến, bản ghi hoặc hàng. Điều này rất hữu ích Nếu mới hoặc cũ nên được tham chiếu bởi tỷ lệ kèo bóng đá tối nay tên khác bên trong tỷ lệ kèo bóng đá tối nay Quy trình kích hoạt.

Dữ liệu Loại

Loại khác nhau có thể là bất kỳ cơ sở nào hiện có tỷ lệ kèo bóng đá tối nay cơ sở dữ liệu.loạiTrong Phần khai báo ở trên được định nghĩa là:

  • Postgres-Basetype

  • biến%loại

  • class.field%loại

biếnlà tên của tỷ lệ kèo bóng đá tối nay biến, được khai báo trước đây trong cùng tỷ lệ kèo bóng đá tối nay hàm, có thể nhìn thấy Tại thời điểm này.

classlà tên của tỷ lệ kèo bóng đá tối nay bảng hoặc xem ở đâutrườnglà Tên của tỷ lệ kèo bóng đá tối nay thuộc tính.

Sử dụngclass.field11262_11814class.field%loại khai báo, họ sẽ tự động xử lý thay đổi kích thước hoặc nếu lược đồ bảng mới xác định thuộc tính là loại văn bản.

Biểu thức

Tất cả tỷ lệ kèo bóng đá tối nay biểu thức được sử dụng trong tỷ lệ kèo bóng đá tối nay câu lệnh PL/PGSQL được xử lý bằng cách sử dụng Người thực thi phụ trợ. Biểu thức dường như chứa Trên thực tế, tỷ lệ kèo bóng đá tối nay hằng số có thể yêu cầu đánh giá thời gian chạy (ví dụ: 'bây giờ' cho loại DateTime) vì vậy trình phân tích cú pháp PL/PGSQL không thể Xác định tỷ lệ kèo bóng đá tối nay giá trị không đổi thực khác với từ khóa null. Tất cả Biểu thức được đánh giá nội bộ bằng cách thực thi truy vấn

ChọnBiểu thức

Sử dụng Trình quản lý SPI. Trong biểu hiện, sự xuất hiện của Định danh biến được thay thế bằng tỷ lệ kèo bóng đá tối nay tham số và thực tế tỷ lệ kèo bóng đá tối nay giá trị từ tỷ lệ kèo bóng đá tối nay biến được chuyển cho người thực thi trong Mảng tham số. Tất cả tỷ lệ kèo bóng đá tối nay biểu thức được sử dụng trong hàm PL/PGSQL là chỉ được chuẩn bị và lưu một lần.

Loại kiểm tra được thực hiện bởiPostgrestrình phân tích cú pháp chính có một số tác dụng phụ để Việc giải thích tỷ lệ kèo bóng đá tối nay giá trị không đổi. Chi tiết có một sự khác biệt giữa những gì hai hàm

Tạo hàm logfunc1 (văn bản) Trả về DateTime là '
    TUYÊN BỐ
        Bí danh logtxt với giá $ 1;
    BẮT ĐẦU
        Chèn vào tỷ lệ kèo bóng đá tối nay giá trị logtable (logtxt, '' now '');
        Trả lại '' bây giờ '';
    KẾT THÚC;
'Ngôn ngữ' plpgsql ';
Tạo hàm logfunc2 (văn bản) Trả về DateTime là '
    TUYÊN BỐ
        Bí danh logtxt với giá $ 1;
        DateTime Curtime;
    BẮT ĐẦU
        Curtime: = '' Bây giờ '';
        Chèn vào tỷ lệ kèo bóng đá tối nay giá trị logtable (logtxt, curtime);
        Trả lại thời gian;
    KẾT THÚC;
'Ngôn ngữ' plpgsql ';
làm. Trong trường hợp tỷ lệ kèo bóng đá tối nay logfunc1 (),Postgres13686_14075

Trong trường hợp logfunc2 (),PostgresTrình phân tích cú pháp chính không biết loại nào 'Bây giờ' sẽ trở thành và do đó nó trả về một kiểu dữ liệu của văn bản chứa chuỗi 'bây giờ'. Trong quá trình chuyển nhượng cho địa phương Biến Curtime, trình thông dịch PL/PGSQL đã chuyển chuỗi này vào Loại DateTime bằng cách gọi tỷ lệ kèo bóng đá tối nay hàm text_out () và datetime_in () cho chuyển đổi.

Loại kiểm tra này được thực hiện bởiPostgres14550_14853

Nếu tỷ lệ kèo bóng đá tối nay trường bản ghi được sử dụng trong tỷ lệ kèo bóng đá tối nay biểu thức hoặc câu lệnh, dữ liệu tỷ lệ kèo bóng đá tối nay loại trường không nên thay đổi giữa tỷ lệ kèo bóng đá tối nay cuộc gọi của một và giống nhau sự biểu lộ. Hãy ghi nhớ điều này khi viết tỷ lệ kèo bóng đá tối nay thủ tục kích hoạt xử lý tỷ lệ kèo bóng đá tối nay sự kiện cho nhiều bảng.

câu tỷ lệ kèo bóng đá tối naynh

Bất cứ điều gì không được trình phân tích cú pháp PL/PGSQL hiểu Dưới đây sẽ được đưa vào truy vấn và gửi xuống công cụ cơ sở dữ liệu để thực hiện. Truy vấn kết quả không được trả về bất kỳ dữ liệu nào.

gán

tỷ lệ kèo bóng đá tối nay gán giá trị cho tỷ lệ kèo bóng đá tối nay biến hoặc trường hàng/bản ghi được viết là

        định danh: =15609_15621;
Nếu kiểu dữ liệu kết quả biểu thức không khớp với Kiểu dữ liệu biến hoặc biến có kích thước/độ chính xác được biết (như đối với char (20)), giá trị kết quả sẽ được sử dụng ngầm bởi trình thông dịch mã byte pl/pgsql bằng cách sử dụng tỷ lệ kèo bóng đá tối nay loại kết quả đầu ra- và tỷ lệ kèo bóng đá tối nay biến số biến đầu vào. Lưu ý rằng điều này có thể có khả năng dẫn đến lỗi thời gian chạy được tạo bởi tỷ lệ kèo bóng đá tối nay loại đầu vào chức năng.

Bài tập của tỷ lệ kèo bóng đá tối nay lựa chọn hoàn chỉnh vào tỷ lệ kèo bóng đá tối nay bản ghi hoặc hàng có thể được thực hiện bởi

ChọnBiểu thứcthànhTargettừ ...;
Targetcó thể là một bản ghi, một hàng Biến hoặc danh sách tỷ lệ kèo bóng đá tối nay biến được phân tách bằng dấu phẩy và bản ghi-/trường hàng.

Nếu một hàng hoặc danh sách biến được sử dụng làm mục tiêu, được chọn tỷ lệ kèo bóng đá tối nay giá trị phải khớp chính xác với cấu trúc của (tỷ lệ kèo bóng đá tối nay) mục tiêu hoặc Lỗi thời gian chạy xảy ra. Từ khóa có thể được theo sau bởi bất kỳ Trình độ chuyên môn, nhóm, sắp xếp hợp lệ, v.v. có thể được đưa ra cho một câu lệnh chọn.

Có tỷ lệ kèo bóng đá tối nay biến đặc biệt có tên là tìm thấy loại bool mà có thể được sử dụng ngay sau khi chọn vào để kiểm tra xem có Nhiệm vụ đã thành công.

Chọn * vào MyRec từ emp trong đó empname = myname;
Nếu không tìm thấy thì
    Tăng ngoại lệ '' Nhân viên % không tìm thấy '', myname;
Kết thúc nếu;
Nếu lựa chọn trả về nhiều hàng, chỉ đầu tiên là di chuyển vào tỷ lệ kèo bóng đá tối nay trường mục tiêu. Tất cả những người khác bị loại bỏ âm thầm.
Gọi chức năng khác

Tất cả tỷ lệ kèo bóng đá tối nay chức năng được xác định trong AProstgresCơ sở dữ liệu trả về giá trị. Như vậy, Cách bình thường để gọi hàm là thực hiện truy vấn chọn hoặc thực hiện tỷ lệ kèo bóng đá tối nay bài tập (dẫn đến nội bộ PL/PGSQL LỰA CHỌN). Nhưng có những trường hợp ai đó không quan tâm đến int kết quả chức năng.

biểu diễnTruy vấn

thực hiện tỷ lệ kèo bóng đá tối nay 'ChọnTruy vấn' qua người quản lý SPI và loại bỏ kết quả. Số nhận dạng như tỷ lệ kèo bóng đá tối nay biến cục bộ vẫn được thay thế thành tham số.
Trở về từ chức năng
returnBiểu thức

Hàm chấm dứt và giá trị tỷ lệ kèo bóng đá tối nayBiểu thứcsẽ được đưa trở lại phần trên người thực thi. Giá trị trả về của tỷ lệ kèo bóng đá tối nay hàm không thể được xác định. Nếu như Kiểm soát đạt đến phần cuối của khối Toplevel của chức năng Không cần nhấn câu lệnh trả về, lỗi thời gian chạy sẽ xảy ra.

Kết quả biểu thức sẽ tự động được đưa vào tỷ lệ kèo bóng đá tối nay chức năng Loại trả về như được mô tả cho tỷ lệ kèo bóng đá tối nay bài tập.

hủy bỏ và tin nhắn

18484_18585PostgresCơ chế ELOG.

Nângcấp Định dạng'' [,định danh[...]];
Bên trong định dạng, "%18885_19200
điều kiện
nếuBiểu thứcsau đócâu[khácCâu]
Kết thúc nếu;
TheBiểu thứcPhải trả lại a giá trị mà ít nhất có thể được đúc thành tỷ lệ kèo bóng đá tối nay loại boolean.
vòng lặp

Có nhiều loại vòng.

[<< Nhãn ]
Vòng lặpCâuvòng lặp kết thúc;
Một vòng lặp vô điều kiện phải được chấm dứt rõ ràng bởi Một tuyên bố thoát. Nhãn tùy chọn có thể được sử dụng bằng cách thoát Báo cáo của tỷ lệ kèo bóng đá tối nay vòng lặp lồng nhau để xác định mức độ làm tổ nên bị chấm dứt.
[<< Nhãn ]
TRONG KHIBiểu thứcvòng lặpCâuvòng lặp kết thúc;
tỷ lệ kèo bóng đá tối nay vòng lặp có điều kiện được thực hiện miễn là đánh giá củaBiểu thứclà đúng.
[<< Nhãn ]
VÌtênTrong [đảo ngược]Biểu thức..Biểu thứcVòng lặpCâuvòng lặp kết thúc;
Một vòng lặp lặp lại trong một loạt tỷ lệ kèo bóng đá tối nay giá trị số nguyên. tỷ lệ kèo bóng đá tối nay biếntênđược tự động Được tạo dưới dạng số nguyên loại và chỉ tồn tại bên trong vòng lặp. Hai Biểu thức cho giới hạn dưới và trên tỷ lệ kèo bóng đá tối nay phạm vi là chỉ được đánh giá khi vào vòng lặp. Bước lặp luôn luôn là 1.
[<< Nhãn ]
VÌGhi lại | hàng nganginselect_clauseVòng lặpcâu tỷ lệ kèo bóng đá tối naynhvòng lặp kết thúc;
21108_21336
Thoát [nhãn] [KhiBiểu thức];
nếu khôngnhãnCho, The Vòng lặp trong cùng được chấm dứt và tuyên bố sau vòng lặp cuối được thực hiện tiếp theo. Nếu nhưnhãnIS đưa ra, nó phải là nhãn của hiện tại hoặc cấp trên của Khối vòng lặp lồng nhau. Sau đó, vòng lặp hoặc khối được đặt tên bị chấm dứt và Kiểm soát tiếp tục với câu lệnh sau tỷ lệ kèo bóng đá tối nay vòng/khối Kết thúc tương ứng.

Trigger Thủ tục

PL/PGSQL có thể được sử dụng để xác định tỷ lệ kèo bóng đá tối nay quy trình kích hoạt. Họ là được tạo bằng lệnh tạo chức năng thông thường như là một hàm với không có đối số và loại trả về mờ đục.

Có tỷ lệ kèo bóng đá tối nay sốPostgresChi tiết cụ thể trong tỷ lệ kèo bóng đá tối nay chức năng được sử dụng làm quy trình kích hoạt.

Đầu tiên họ có tỷ lệ kèo bóng đá tối nay số biến đặc biệt được tạo tự động trong Phần Tuyên bố khối Toplevel. Họ là

mới

Bản ghi dữ liệu; Biến giữ hàng cơ sở dữ liệu mới trên Chèn/cập nhật tỷ lệ kèo bóng đá tối nay hoạt động trên tỷ lệ kèo bóng đá tối nay kích hoạt cấp độ hàng.

Bản ghi dữ liệu; Biến giữ hàng cơ sở dữ liệu cũ trên Cập nhật/xóa tỷ lệ kèo bóng đá tối nay hoạt động trên tỷ lệ kèo bóng đá tối nay kích hoạt cấp độ hàng.

TG_NAME

Tên kiểu dữ liệu; biến chứa tên tỷ lệ kèo bóng đá tối nay Trigger thực sự bị bắn.

tg_when

Văn bản dữ liệu; tỷ lệ kèo bóng đá tối nay chuỗi của 'trước' hoặc 'sau' Tùy thuộc vào định nghĩa kích hoạt.

TG_LEVEL

Văn bản kiểu dữ liệu; tỷ lệ kèo bóng đá tối nay chuỗi của 'hàng' hoặc 'câu lệnh' Tùy thuộc vào định nghĩa kích hoạt.

TG_OP

Văn bản dữ liệu; tỷ lệ kèo bóng đá tối nay chuỗi 'chèn', 'cập nhật' hoặc 'xóa' Nói cho hoạt động nào kích hoạt thực sự được bắn.

TG_RELID

DataType oid; ID đối tượng tỷ lệ kèo bóng đá tối nay bảng gây ra Lệnh kích hoạt.

TG_RELNAME

Tên kiểu dữ liệu; tên tỷ lệ kèo bóng đá tối nay bảng gây ra kích hoạt cầu khẩn.

TG_NARGS

23571_23682

TG_ARGV []

Mảng văn bản dữ liệu; tỷ lệ kèo bóng đá tối nay đối số từ tạo ra Tuyên bố kích hoạt. Chỉ số được tính từ 0 và có thể được đưa ra là một biểu thức. Chỉ số không hợp lệ (<0 hoặc = TG_NARGS) dẫn đến giá trị null.

23963_24479

ngoại lệ

Postgreskhông có Mô hình xử lý ngoại lệ thông minh. Bất cứ khi nào trình phân tích cú pháp, người lập kế hoạch/trình tối ưu hóa hoặc thực thi quyết định rằng tỷ lệ kèo bóng đá tối nay tuyên bố không thể được xử lý lâu hơn, toàn bộ giao dịch bị hủy bỏ và Hệ thống nhảy trở lại vào chính để lấy truy vấn tiếp theo từ Ứng dụng máy khách.

24897_25458

Do đó, điều duy nhất PL/PGSQL hiện đang làm khi nó gặp Việc hủy bỏ trong khi thực hiện tỷ lệ kèo bóng đá tối nay chức năng hoặc quy trình kích hoạt là Viết tỷ lệ kèo bóng đá tối nay số tin nhắn nhật ký mức độ gỡ lỗi bổ sung cho biết trong đó chức năng và ở đâu (số dòng và loại câu lệnh) đã xảy ra.