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

42.10. Chức năng kích kèo tỷ số bóng đá euro hôm nay

PL/PGSQLcó thể được sử dụng để xác định các chức năng kích kèo tỷ số bóng đá euro hôm nay trên các thay đổi dữ liệu hoặc các sự kiện cơ sở dữ liệu. Chức năng kích kèo tỷ số bóng đá euro hôm nay được tạo bằngTạo chức kèo tỷ số bóng đá euro hôm naylệnh, khai báo nó là một hàm không có đối số và loại trả về củaTrigger(đối với kích kèo tỷ số bóng đá euro hôm nay thay đổi dữ liệu) hoặcevent_trigger(Đối với kích kèo tỷ số bóng đá euro hôm nay sự kiện cơ sở dữ liệu). Các biến cục bộ đặc biệt có tênTG_cái gì đóđược tự động xác định để mô tả điều kiện kích kèo tỷ số bóng đá euro hôm nay cuộc gọi.

42.10.1. Kích kèo tỷ số bóng đá euro hôm nay thay đổi dữ liệu

Atỷ lệ kèo tỷ số bóng đá euro hôm nay bóng đá: Tài liệu: 13: Chương 38. Triggersđược khai báo là một hàm không có đối số và loại trả về củaTrigger12370_12490Tạo Trigger- Các đối số như vậy được truyền quaTG_ARGV, như được mô tả bên dưới.

Khi APL/PGSQLHàm được gọi là kích kèo tỷ số bóng đá euro hôm nay, một số biến đặc biệt được tạo tự động trong khối cấp cao nhất. Họ là:

new

Kiểu dữ kèo tỷ số bóng đá euro hôm nayRecord; Biến giữ hàng cơ sở dữ kèo tỷ số bóng đá euro hôm nay mới choChèn/Cập nhậtkèo tỷ số bóng đá euro hôm nay động trong các kích kèo tỷ số bóng đá euro hôm nay cấp độ hàng. Biến này là NULL trong các kích kèo tỷ số bóng đá euro hôm nay cấp câu lệnh và choXóakèo tỷ số bóng đá euro hôm nay động.

Kiểu dữ kèo tỷ số bóng đá euro hôm nayRecord; Biến giữ hàng cơ sở dữ kèo tỷ số bóng đá euro hôm nay cũ choCập nhật/Xóakèo tỷ số bóng đá euro hôm nay động trong các kích kèo tỷ số bóng đá euro hôm nay cấp độ hàng. Biến này là NULL trong các kích kèo tỷ số bóng đá euro hôm nay cấp câu lệnh và choChènkèo tỷ số bóng đá euro hôm nay động.

TG_NAME

Kiểu dữ kèo tỷ số bóng đá euro hôm naytên; Biến chứa tên của bộ kích kèo tỷ số bóng đá euro hôm nay thực sự bị bắn.

TG_WHEN

Kiểu dữ kèo tỷ số bóng đá euro hôm nayText; một chuỗitrước, sauhoặcthay vì, Tùy thuộc vào định nghĩa của bộ kích kèo tỷ số bóng đá euro hôm nay.

TG_LEVEL

Kiểu dữ kèo tỷ số bóng đá euro hôm nayText; một chuỗi củahànghoặccâu lệnhTùy thuộc vào định nghĩa của bộ kích kèo tỷ số bóng đá euro hôm nay.

TG_OP

Kiểu dữ kèo tỷ số bóng đá euro hôm nayText; một chuỗiChèn, Cập nhật, Xóahoặccắt ngắnKể cho kèo tỷ số bóng đá euro hôm nay động nào đã kích kèo tỷ số bóng đá euro hôm nay.

TG_RELID

Kiểu dữ kèo tỷ số bóng đá euro hôm nayoid; ID đối tượng của bảng gây ra lệnh gọi kích kèo tỷ số bóng đá euro hôm nay.

TG_RELNAME

Kiểu dữ kèo tỷ số bóng đá euro hôm naytên; Tên của bảng gây ra lời mời kích kèo tỷ số bóng đá euro hôm nay. Điều này bây giờ không được chấp nhận, và có thể biến mất trong một bản phát hành trong tương lai. Sử dụngTG_TABLE_NAMEThay vào đó.

TG_TABLE_NAME

Kiểu dữ kèo tỷ số bóng đá euro hôm naytên; Tên của bảng gây ra lời mời kích kèo tỷ số bóng đá euro hôm nay.

tg_table_schema

Kiểu dữ kèo tỷ số bóng đá euro hôm naytên; Tên của lược đồ của bảng gây ra lời mời kích kèo tỷ số bóng đá euro hôm nay.

TG_NARGS

Kiểu dữ kèo tỷ số bóng đá euro hôm naySố nguyên; số lượng đối số được đưa ra cho hàm kích kèo tỷ số bóng đá euro hôm nay trongTạo Triggercâu lệnh.

TG_ARGV []

Mảng kiểu dữ kèo tỷ số bóng đá euro hôm nay củaText; Các đối số từTạo TriggerTuyên bố. Chỉ số được tính từ 0. Các chỉ mục không hợp lệ (nhỏ hơn 0 hoặc lớn hơn hoặc bằngTG_NARGS) Kết quả là giá trị null.

Một chức năng kích kèo tỷ số bóng đá euro hôm nay phải trả vềnullhoặc giá trị bản ghi/hàng có chính xác cấu trúc của bảng, kích kèo tỷ số bóng đá euro hôm nay đã được kích kèo tỷ số bóng đá euro hôm nay.

Trình kích kèo tỷ số bóng đá euro hôm nay cấp hàng đã bắntrướcCó thể trả về NULL để báo hiệu Trình quản lý kích kèo tỷ số bóng đá euro hôm nay bỏ qua phần còn lại của thao tác cho hàng này (nghĩa là, các bộ kích kèo tỷ số bóng đá euro hôm nay tiếp theo không được bắn vàChèn/Cập nhật/Xóa17199_17371mới17401_17563mới(hoặc một giá trị bằng nhau) phải được trả về. Để thay đổi hàng cần được lưu trữ, có thể thay thế các giá trị đơn trực tiếp trongmớivà trả về sửa đổimớihoặc để xây dựng một bản ghi/hàng mới hoàn chỉnh để trả lại. Trong trường hợp trước kích kèo tỷ số bóng đá euro hôm nay trênXóa, giá trị trả về không có hiệu lực trực tiếp, nhưng nó phải không được cho phép hành động kích kèo tỷ số bóng đá euro hôm nay được tiến hành. Lưu ý rằngmớilà null trongXóaKích kèo tỷ số bóng đá euro hôm nay, vì vậy việc trả lại thường không hợp lý. Thành ngữ thông thường trongXóaTriggers sẽ trở lại.

thay vìTriggers (luôn luôn là kích kèo tỷ số bóng đá euro hôm nay cấp độ hàng và chỉ có thể được sử dụng trên các lượt xem) có thể trả lại NULL để báo hiệu rằng chúng không thực hiện bất kỳ bản cập nhật nào và phần còn lại của kèo tỷ số bóng đá euro hôm nay động cho hàng không được đưa vàoChèn/Cập nhật/Xóa). Nếu không, một giá trị không phải sẽ được trả về, để báo hiệu rằng bộ kích kèo tỷ số bóng đá euro hôm nay đã thực hiện thao tác được yêu cầu. VìChènCập nhậtkèo tỷ số bóng đá euro hôm nay động, giá trị trả về phải làmới, mà hàm kích kèo tỷ số bóng đá euro hôm nay có thể sửa đổi để hỗ trợChèn trả lạiCập nhật trả về(Điều này cũng sẽ ảnh hưởng đến giá trị hàng được truyền cho bất kỳ bộ kích kèo tỷ số bóng đá euro hôm nay nào sau đó hoặc được chuyển cho một đặc biệtbị loại trừTài kèo tỷ số bóng đá euro hôm nay tham khảo bí danh trong mộtChèncâu lệnh vớitrên xung đột do cập nhậtmệnh đề). VìXóakèo tỷ số bóng đá euro hôm nay động, giá trị trả về phải là.

Giá trị trả về của kích kèo tỷ số bóng đá euro hôm nay cấp hàng được bắnsauhoặc kích kèo tỷ số bóng đá euro hôm nay cấp độ tuyên bốtrướchoặcsauluôn bị bỏ qua; Nó cũng có thể là NULL. Tuy nhiên, bất kỳ loại kích kèo tỷ số bóng đá euro hôm nay nào vẫn có thể hủy bỏ toàn bộ kèo tỷ số bóng đá euro hôm nay động bằng cách gây ra lỗi.

Ví dụ 42.3Hiển thị một ví dụ về hàm kích kèo tỷ số bóng đá euro hôm nay trongPL/PGSQL.

Ví dụ 42.3. MỘTPL/PGSQLchức năng kích kèo tỷ số bóng đá euro hôm nay

Ví dụ này kích kèo tỷ số bóng đá euro hôm nay đảm bảo rằng bất cứ khi nào một hàng được chèn hoặc cập nhật trong bảng, tên người dùng hiện tại và thời gian được đóng dấu vào hàng. Và nó kiểm tra xem tên của một nhân viên được đưa ra và mức lương là một giá trị dương.

20674_21607

Một cách khác để ghi lại các thay đổi vào bảng liên quan đến việc tạo một bảng mới giữ một hàng cho mỗi lần chèn, cập nhật hoặc xóa xảy ra. Cách tiếp cận này có thể được coi là kiểm toán thay đổi trên bảng.Ví dụ 42.4Hiển thị một ví dụ về chức năng kích kèo tỷ số bóng đá euro hôm nay kiểm toán trongPL/PGSQL.

Ví dụ 42.4. MỘTPL/PGSQLChức năng kích kèo tỷ số bóng đá euro hôm nay để kiểm toán

Ví dụ này kích kèo tỷ số bóng đá euro hôm nay đảm bảo rằng mọi chèn, cập nhật hoặc xóa một hàng trongEMPBảng được ghi lại (tức là, được kiểm toán) trongEMP_AUDITBảng. Tên người dùng và thời gian hiện tại được đóng dấu vào hàng, cùng với loại kèo tỷ số bóng đá euro hôm nay động được thực hiện trên đó.

Tạo bảng EMP (
    Empname văn bản không phải null,
    Số nguyên lương
);

Tạo bảng emp_audit (
    kèo tỷ số bóng đá euro hôm nay động Char (1) không phải NULL,
    dấu thời gian tem không phải null,
    văn bản userid không null,
    Empname văn bản không phải null,
    Số nguyên lương
);

Tạo hoặc thay thế chức năng process_emp_audit () trả về Trigger như $ emp_audit $
    BẮT ĐẦU
        -
        - Tạo một hàng trong EMP_Audit để phản ánh kèo tỷ số bóng đá euro hôm nay động được thực hiện trên EMP,
        - Sử dụng biến đặc biệt TG_OP để thực hiện thao tác.
        -
        If (tg_op = 'xóa') thì
            Chèn vào emp_audit Chọn 'd', bây giờ (), current_user, cũ.*;
        Elsif (tg_op = 'cập nhật') sau đó
            Chèn vào emp_audit Chọn 'u', bây giờ (), current_user, mới.*;
        Elsif (tg_op = 'chèn') sau đó
            Chèn vào emp_audit Chọn 'i', bây giờ (), current_user, mới.*;
        Kết thúc nếu;
        Trả lại null; - Kết quả bị bỏ qua vì đây là một kích kèo tỷ số bóng đá euro hôm nay sau
    KẾT THÚC;
$ emp_audit $ ngôn ngữ plpgsql;

Tạo Trigger EMP_AUDIT
Sau khi chèn hoặc cập nhật hoặc xóa trên EMP
    Đối với mỗi hàng thực thi chức năng process_emp_audit ();

23956_24308Ví dụ 42.5Hiển thị ví dụ về kích kèo tỷ số bóng đá euro hôm nay kiểm toán trên chế độ xem trongPL/PGSQL.

Ví dụ 42.5. MỘTPL/PGSQLXem chức năng kích kèo tỷ số bóng đá euro hôm nay để kiểm toán

24843_25008EMP_AUDITBảng. Thời gian hiện tại và tên người dùng được ghi lại, cùng với loại kèo tỷ số bóng đá euro hôm nay động được thực hiện và chế độ xem hiển thị thời gian sửa đổi cuối cùng của mỗi hàng.

25242_26965

Một cách sử dụng các kích kèo tỷ số bóng đá euro hôm nay là duy trì bảng tóm tắt của một bảng khác. Tóm tắt kết quả có thể được sử dụng thay cho bảng gốc cho các truy vấn nhất định - thường là với thời gian chạy giảm rất nhiều. Kỹ thuật này thường được sử dụng trong kho dữ liệu, trong đó các bảng dữ liệu được đo hoặc quan sát (được gọi là bảng thực tế) có thể cực kỳ lớn.Ví dụ 42.627557_27602PL/PGSQLduy trì bảng tóm tắt cho bảng thực tế trong kho dữ kèo tỷ số bóng đá euro hôm nay.

Ví dụ 42.6. MỘTPL/PGSQLChức năng kích kèo tỷ số bóng đá euro hôm nay để duy trì bảng tóm tắt

lược đồ chi tiết ở đây một phần dựa trênCửa hàng tạp hóaVí dụ từBộ công cụ kho dữ kèo tỷ số bóng đá euro hôm naybởi Ralph Kimball.

28225_32799

sauTriggers cũng có thể sử dụngBảng chuyển tiếpĐể kiểm tra toàn bộ tập hợp các hàng thay đổi bằng câu lệnh kích kèo tỷ số bóng đá euro hôm nay. TheTạo TriggerLệnh gán tên cho một hoặc cả hai bảng chuyển tiếp, và sau đó hàm có thể đề cập đến các tên đó như thể chúng chỉ đọc các bảng tạm thời.Ví dụ 42.7Hiển thị một ví dụ.

Ví dụ 42.7. Kiểm toán với bảng chuyển tiếp

Ví dụ này tạo ra kết quả giống nhưVí dụ 42.433866_34246Tham khảomệnh đề phải khác nhau cho mỗi trường hợp. Nhưng điều này không ngăn chúng tôi sử dụng một chức năng kích kèo tỷ số bóng đá euro hôm nay duy nhất nếu chúng tôi chọn. (Trong thực tế, tốt hơn là sử dụng ba chức năng riêng biệt và tránh các bài kiểm tra thời gian chạy trênTG_OP.)

34577_36191

42.10.2. Trình kích kèo tỷ số bóng đá euro hôm nay trên các sự kiện

PL/PGSQLcó thể được sử dụng để xác địnhPostgreSQL: Tài liệu: 13: Chương 39. soi kèo tỷ số bóng đá euro hôm nay. POSTGRESQLYêu cầu rằng một hàm được gọi là kích kèo tỷ số bóng đá euro hôm nay sự kiện phải được khai báo là một hàm không có đối số và loại trả về củaevent_trigger.

Khi APL/PGSQLHàm được gọi là kích kèo tỷ số bóng đá euro hôm nay sự kiện, một số biến đặc biệt được tạo tự động trong khối cấp cao nhất. Họ là:

TG_EVENT

Kiểu dữ kèo tỷ số bóng đá euro hôm nayText; Một chuỗi đại diện cho sự kiện Trình kích kèo tỷ số bóng đá euro hôm nay được kích kèo tỷ số bóng đá euro hôm nay.

TG_TAG

Kiểu dữ kèo tỷ số bóng đá euro hôm nayText; Biến chứa thẻ lệnh mà kích kèo tỷ số bóng đá euro hôm nay được kích kèo tỷ số bóng đá euro hôm nay.

Ví dụ 42.8Hiển thị một ví dụ về chức năng kích kèo tỷ số bóng đá euro hôm nay sự kiện trong37849_37859.

Ví dụ 42.8. MỘTPL/PGSQLChức năng kích kèo tỷ số bóng đá euro hôm nay sự kiện

Ví dụ này kích kèo tỷ số bóng đá euro hôm nay chỉ đơn giản là tăngThông báoTin nhắn mỗi khi lệnh được hỗ trợ được thực hiện.

Tạo hoặc thay thế hàm snitch () trả về event_trigger dưới dạng $$
BẮT ĐẦU
    Nâng cao thông báo 'snitch: % %', tg_event, tg_tag;
KẾT THÚC;
$$ Ngôn ngữ plpgsql;

Tạo sự kiện kích kèo tỷ số bóng đá euro hôm nay snitch trên ddl_command_start thực thi chức năng snitch ();

Gửi hiệu chỉnh

39723_39949Mẫu nàyĐể báo cáo vấn đề tài kèo tỷ số bóng đá euro hôm nay.