9834_9873 | ||||
---|---|---|---|---|
prev | Backward nhanh | Chuyển tiếp nhanh | NEXT |
Tạo [hoặc thay thế] kèo bóng đá eurotênnhư trênSự kiệnđếnBảng[WHEREđiều kiện] Làm [cũng | Thay vào đó] không có gì |lệnh| (lệnh;lệnh...)
Tạo kèo bóng đá euroXác định một kèo bóng đá euro mới áp dụng cho một bảng hoặc chế độ xem được chỉ định.Tạo Hoặc thay thế kèo bóng đá eurosẽ tạo kèo bóng đá euro mới hoặc thay thế kèo bóng đá euro hiện có cùng tên cho cùng một bảng.
ThePostgreSQLHệ thống kèo bóng đá euro cho phép người ta xác định một hành động thay thế được thực hiện Chèn, cập nhật hoặc xóa trong các bảng cơ sở dữ liệu. Đại khái Nói, một kèo bóng đá euro khiến các lệnh bổ sung được thực thi khi Lệnh đã cho trên một bảng nhất định được thực thi. Ngoài ra, mộtThay vào đó11932_12442Chương 36.
12487_12500ON CHỌNkèo bóng đá euro phải được vô điều kiệnThay vào đókèo bóng đá euro và phải có những hành động bao gồm mộtChọnlệnh. Do đó, mộttrên LỰA CHỌNkèo bóng đá euro biến bảng thành chế độ xem một cách hiệu quả Nội dung hiển thị là các hàng được trả về bởi kèo bóng đá euroChọnlệnh thay vì bất cứ điều gì đã được Được lưu trữ trong bảng (nếu có). Nó được coi là phong cách tốt hơn để viết akèo bóng đá euro chế độ xemLệnh hơn đến kèo bóng đá euro một bảng thực và xác định mộttrên LỰA CHỌNkèo bóng đá euro cho nó.
Bạn có thể kèo bóng đá euro ảo giác về chế độ xem cập nhật bằng cách xác địnhtrên chèn, trên CẬP NHẬTvàKhi xóakèo bóng đá euro (hoặc bất kỳ tập hợp con đủ cho mục đích của bạn) để thay thế Cập nhật các hành động trên chế độ xem với các bản cập nhật phù hợp về bàn. Nếu bạn muốn hỗ trợChèn Trở vềvà cứ thế, sau đó chắc chắn đặt một phù hợpTrở vềmệnh đề vào từng điều khoản này kèo bóng đá euro.
Có một sự bắt nếu bạn cố gắng sử dụng các kèo bóng đá euro có điều kiện để xem Cập nhật: CóphảiBE một điều kiện vô điều kiệnThay vào đókèo bóng đá euro cho mỗi hành động bạn muốn cho phép trên chế độ xem. Nếu kèo bóng đá euro là có điều kiện, hoặc không phảiThay vào đó, thì hệ thống sẽ vẫn từ chối các nỗ lực để thực hiện hành động cập nhật, bởi vì nó nghĩ rằng nó có thể sẽ cố gắng thực hiện hành động trên hình nộm Bảng của quan điểm trong một số trường hợp. Nếu bạn muốn xử lý tất cả Các trường hợp hữu ích trong các kèo bóng đá euro có điều kiện, thêm một điều kiện vô điều kiệnDo thay vào đó không có gìkèo bóng đá euro để đảm bảo rằng Hệ thống hiểu rằng nó sẽ không bao giờ được gọi để cập nhật Bảng giả. Sau đó làm cho các kèo bóng đá euro có điều kiện khôngThay vào đó; Trong trường hợp chúng được áp dụng, họ Thêm vào mặc địnhThay vào đó không có gìHành động. (Phương pháp này hiện không hoạt động để hỗ trợTrở vềTruy vấn, tuy nhiên.)
Tên của một kèo bóng đá euro để tạo. Điều này phải khác biệt với Tên của bất kỳ kèo bóng đá euro nào khác cho cùng một bảng. Nhiều các kèo bóng đá euro trên cùng một bảng và loại sự kiện tương tự được áp dụng thứ tự tên chữ cái.
Sự kiện này là một trongChọn, Chèn, Cập nhậthoặcXóa.
Tên (tùy chọn Lược đồ theo trình độ) của bảng hoặc Xem kèo bóng đá euro áp dụng cho.
anySQLcó điều kiện Biểu thức (Trả vềBoolean). Các Biểu thức điều kiện không thể tham khảo bất kỳ bảng nào ngoại trừmớivàcũ, và không thể chứa tổng hợp chức năng.
Thay vào đóchỉ ra rằng Các lệnh phải được thực thiThay vìBản gốc yêu cầu.
cũngchỉ ra rằng Các lệnh phải được thực thiNgoàiBản gốc yêu cầu.
nếu khôngcũng16579_16586Thay vào đóđược chỉ định,Ngoài ralà mặc định.
lệnh hoặc lệnh tạo nên hành động kèo bóng đá euro. Các lệnh hợp lệ làChọn, Chèn, Cập nhật, XóahoặcThông báo.
trongđiều kiệnvàlệnh, Tên bảng đặc biệtnewvàcũCó thể được sử dụng để tham khảo các giá trị trong bảng được tham chiếu.mớicó giá trị trongKhi chènvàtrên cập nhậtkèo bóng đá euro tham khảo cái mới hàng được chèn hoặc cập nhật.cũIS hợp lệ trong17589_17600vàKhi xóakèo bóng đá euro tham khảo hàng hiện tại đã cập nhật hoặc xóa.
Bạn phải là chủ sở hữu của bảng để tạo hoặc thay đổi kèo bóng đá euro cho Nó.
Trong kèo bóng đá euro choChèn, Cập nhậthoặcXóaTrên a Xem, bạn có thể thêm mộtTrở vềmệnh đề Điều đó phát ra các cột của chế độ xem. Điều khoản này sẽ được sử dụng để Tính toán đầu ra nếu kèo bóng đá euro được kích hoạt bởiChèn trả về, Cập nhật Trở vềhoặcXóa trả vềLệnh tương ứng. Khi kèo bóng đá euro được kích hoạt bởi một lệnh không cóTrở về, kèo bóng đá euroTrở vềmệnh đề sẽ bị bỏ qua. Hiện tại Việc triển khai chỉ cho phép vô điều kiệnThay vào đókèo bóng đá euro để chứaTrở về; Hơn nữa có thể có nhiều nhất mộtTrở về18727_18828Trở vềmệnh đề được sử dụng để tính toán kết quả.)Trở vềTruy vấn trên Xem sẽ bị từ chối nếu không cóTrở vềmệnh đề trong bất kỳ kèo bóng đá euro có sẵn nào.
Điều rất quan trọng là phải cẩn thận để tránh các kèo bóng đá euro tròn. Vì Ví dụ, mặc dù hai định nghĩa kèo bóng đá euro sau đây là Được chấp nhận bởiPostgreSQL, TheChọnlệnh sẽ gây raPostgreSQLĐể báo cáo lỗi vì mở rộng đệ quy của một kèo bóng đá euro:
Tạo kèo bóng đá euro "_return" như Trên chọn T1 Làm thay thế Chọn * từ T2; Tạo kèo bóng đá euro "_return" như Trên chọn T2 Làm thay thế Chọn * từ T1; Chọn * từ T1;
Hiện tại, nếu một hành động kèo bóng đá euro có chứaThông báolệnh, TheThông báolệnh sẽ được thực thi vô điều kiện, đó là,Thông báosẽ được ban hành thậm chí Nếu không có bất kỳ hàng nào mà kèo bóng đá euro nên áp dụng cho. Vì Ví dụ, trong:
Tạo kèo bóng đá euro thông báo_me như khi cập nhật cho mytable cũng thông báo cho mytable; Cập nhật myTable set name = 'foo' trong đó id = 42;
mộtThông báoSự kiện sẽ được gửi trong TheCập nhật, Cho dù có bất kỳ hàng phù hợp với điều kiệnid = 42. Đây là một hạn chế thực hiện có thể được sửa chữa trong phát hành trong tương lai.