Tạo chế độ soi kèo bóng đá truoctran - Xác định chế độ soi kèo bóng đá truoctran mới
Tạo [hoặc thay thế] [Temp | Tạm thời] [đệ quy] soi kèo bóng đá truoctrantên
[(Cột_name
[, ...])]]] [ VỚI (View_option_name
[=View_Option_Value
] [, ...])]] BẰNGTruy vấn
[với [Cascaded | Cục bộ] kiểm tra tùy chọn]
Tạo chế độ soi kèo bóng đá truoctran
Xác định chế độ soi kèo bóng đá truoctran của truy vấn. Quan điểm không được vật chất hóa. Thay vào đó, truy vấn được chạy mỗi khi chế độ soi kèo bóng đá truoctran được tham chiếu trong truy vấn.
Tạo hoặc thay thế soi kèo bóng đá truoctran
là tương tự, nhưng nếu một quan điểm cùng tên đã tồn tại, nó sẽ được thay thế. Truy vấn mới phải tạo cùng các cột được tạo bởi truy vấn soi kèo bóng đá truoctran hiện có (nghĩa là cùng tên cột theo cùng một thứ tự và với cùng một loại dữ liệu), nhưng nó có thể thêm các cột bổ sung vào cuối danh sách. Các tính toán làm tăng các cột đầu ra có thể hoàn toàn khác nhau.
Nếu một tên lược đồ được đưa ra (ví dụ:Tạo soi kèo bóng đá truoctran myschema.myview ...
) Sau đó, chế độ soi kèo bóng đá truoctran được tạo trong lược đồ được chỉ định. Nếu không, nó được tạo ra trong lược đồ hiện tại. Các quan điểm tạm thời tồn tại trong một lược đồ đặc biệt, do đó, một tên lược đồ không thể được đưa ra khi tạo một cái nhìn tạm thời. Tên của chế độ soi kèo bóng đá truoctran phải khác biệt với tên của bất kỳ chế độ soi kèo bóng đá truoctran, bảng, trình tự, chỉ mục hoặc bảng nước ngoài nào khác trong cùng một lược đồ.
tạm thời
hoặcTemp
Nếu được chỉ định, chế độ soi kèo bóng đá truoctran được tạo dưới dạng chế độ soi kèo bóng đá truoctran tạm thời. Các chế độ soi kèo bóng đá truoctran tạm thời được tự động bỏ vào cuối phiên hiện tại. Các mối quan hệ vĩnh viễn hiện có cùng tên không thể nhìn thấy cho phiên hiện tại trong khi quan điểm tạm thời tồn tại, trừ khi chúng được tham chiếu với tên đủ điều kiện lược đồ.
Nếu bất kỳ bảng nào được tham chiếu bởi chế độ soi kèo bóng đá truoctran là tạm thời, chế độ soi kèo bóng đá truoctran được tạo như một chế độ soi kèo bóng đá truoctran tạm thời (cho dùtạm thời
được chỉ định hay không).
Kiểu đệ quy
Tạo chế độ soi kèo bóng đá truoctran đệ quy. Cú pháp
Tạo chế độ soi kèo bóng đá truoctran đệ quy [lược đồ
. ]View_Name
(Cột_Names
) Khi chọn...
;
là tương đương với
Tạo chế độ soi kèo bóng đá truoctran [lược đồ
. ]View_Name
Như với đệ quyView_Name
(Cột_Names
) như (chọn...
) ChọnCột_names
từView_Name
;
Danh sách tên cột soi kèo bóng đá truoctran phải được chỉ định cho chế độ soi kèo bóng đá truoctran đệ quy.
tên
Tên (tùy chọn Lược đồ theo trình độ) của một chế độ soi kèo bóng đá truoctran sẽ được tạo.
Cột_name
14271_14393
với (View_option_name
[=View_option_value
] [, ...])
Điều khoản này chỉ định các tham số tùy chọn cho chế độ soi kèo bóng đá truoctran; Các tham số sau được hỗ trợ:
Check_option
(enum
)Tham số này có thể làcục bộ
hoặcCascaded
, và tương đương với chỉ địnhvới [Cascaded | Cục bộ] kiểm tra tùy chọn
(soi kèo bóng đá truoctran bên dưới). Tùy chọn này có thể được thay đổi trên các chế độ soi kèo bóng đá truoctran hiện có bằng cách sử dụngChế độ soi kèo bóng đá truoctran thay đổi.
Security_Barrier
(Boolean
)Điều này nên được sử dụng nếu chế độ soi kèo bóng đá truoctran nhằm cung cấp bảo mật cấp hàng. Nhìn thấyPhần 40.5Để biết chi tiết đầy đủ.
Truy vấn
AChọnhoặcGiá trịLệnh sẽ cung cấp các cột và hàng của chế độ soi kèo bóng đá truoctran.
Với [Cascaded | Cục bộ] kiểm tra tùy chọn
16538_16639Chèn
vàCập nhật
Các lệnh trên chế độ soi kèo bóng đá truoctran sẽ được kiểm tra để đảm bảo rằng các hàng mới thỏa mãn điều kiện xác định chế độ soi kèo bóng đá truoctran (nghĩa là các hàng mới được kiểm tra để đảm bảo rằng chúng có thể nhìn thấy thông qua chế độ soi kèo bóng đá truoctran). Nếu họ không, bản cập nhật sẽ bị từ chối. NếuTùy chọn kiểm tra
không được chỉ định,Chèn
vàCập nhật
17084_17216
cục bộ
Các hàng mới chỉ được kiểm tra so với các điều kiện được xác định trực tiếp trong chính chế độ soi kèo bóng đá truoctran. Bất kỳ điều kiện nào được xác định trên các chế độ soi kèo bóng đá truoctran cơ sở cơ bản không được kiểm tra (trừ khi chúng cũng chỉ địnhTùy chọn kiểm tra
).
Cascaded
Các hàng mới được kiểm tra so với các điều kiện của chế độ soi kèo bóng đá truoctran và tất cả các chế độ soi kèo bóng đá truoctran cơ sở cơ bản. NếuTùy chọn kiểm tra
được chỉ định và khôngcục bộ
cũng khôngCascaded
được chỉ định, sau đóCascaded
được giả định.
TheTùy chọn kiểm tra
có thể không được sử dụng vớiđệ quy
Lượt soi kèo bóng đá truoctran.
Lưu ý rằngKiểm tra tùy chọn
18354_18434thay vì
Triggers hoặcThay vào đó
Quy tắc. Nếu chế độ soi kèo bóng đá truoctran có thể cập nhật tự động được xác định trên đỉnh của chế độ soi kèo bóng đá truoctran cơ sở cóthay vì
Triggers, sau đó làTùy chọn kiểm tra cục bộ
Có thể được sử dụng để kiểm tra các điều kiện trên chế độ soi kèo bóng đá truoctran có thể cập nhật tự động, nhưng các điều kiện trên chế độ soi kèo bóng đá truoctran cơ sở vớithay vì
Trình kích hoạt sẽ không được kiểm tra (tùy chọn kiểm tra xếp tầng sẽ không xếp tầng xuống chế độ soi kèo bóng đá truoctran có thể kích hoạt và bất kỳ tùy chọn kiểm tra nào được xác định trực tiếp trên chế độ soi kèo bóng đá truoctran có thể kích hoạt kích hoạt sẽ bị bỏ qua). Nếu chế độ soi kèo bóng đá truoctran hoặc bất kỳ mối quan hệ cơ sở nào của nó cóThay vào đó
quy tắc gây raChèn
hoặcCập nhật
Lệnh sẽ được viết lại, sau đó tất cả các tùy chọn kiểm tra sẽ bị bỏ qua trong truy vấn viết lại, bao gồm mọi kiểm tra từ các chế độ soi kèo bóng đá truoctran có thể cập nhật tự động được xác định trên đầu mối quan hệ vớiThay vào đó
quy tắc.
Sử dụngView DropTuyên bố để bỏ chế độ soi kèo bóng đá truoctran.
Hãy cẩn thận rằng các tên và loại của các cột của chế độ soi kèo bóng đá truoctran sẽ được gán theo cách bạn muốn. Ví dụ:
Tạo Vista là chọn 'Hello World';
là hình thức xấu vì tên cột mặc định là? Cột?
; Ngoài ra, kiểu dữ liệu cột mặc định làText
, có thể không phải là những gì bạn muốn. Phong cách tốt hơn cho một chuỗi theo nghĩa đen trong kết quả của chế độ soi kèo bóng đá truoctran là một cái gì đó như:
Tạo Vista làm văn bản 'Hello World' là Hello;
20310_20555Phần 40.5Để biết chi tiết. Các chức năng được gọi trong chế độ soi kèo bóng đá truoctran được đối xử giống như khi chúng được gọi trực tiếp từ truy vấn bằng cách sử dụng chế độ soi kèo bóng đá truoctran. Do đó, người dùng của chế độ soi kèo bóng đá truoctran phải có quyền để gọi tất cả các chức năng được sử dụng bởi chế độ soi kèo bóng đá truoctran.
KhiTạo hoặc thay thế soi kèo bóng đá truoctran
được sử dụng trên chế độ soi kèo bóng đá truoctran hiện có, chỉ có quy tắc chọn xác định của chế độ soi kèo bóng đá truoctran được thay đổi. Các thuộc tính soi kèo bóng đá truoctran khác, bao gồm quyền sở hữu, quyền và các quy tắc không chọn, vẫn không thay đổi. Bạn phải sở hữu chế độ soi kèo bóng đá truoctran để thay thế nó (điều này bao gồm là một thành viên của vai trò sở hữu).
Chế độ soi kèo bóng đá truoctran đơn giản có thể cập nhật tự động: Hệ thống sẽ cho phépChèn
, Cập nhật
vàXóa
Các câu lệnh được sử dụng trên chế độ soi kèo bóng đá truoctran theo cách tương tự như trên một bảng thông thường. Một chế độ soi kèo bóng đá truoctran có thể tự động cập nhật nếu nó thỏa mãn tất cả các điều kiện sau:
Chế độ soi kèo bóng đá truoctran phải có chính xác một mục trongtừ
Danh sách, phải là một bảng hoặc chế độ soi kèo bóng đá truoctran cập nhật khác.
Định nghĩa soi kèo bóng đá truoctran không được chứavới
, khác biệt
, Nhóm bởi
, có
, Giới hạn
hoặcOffset
mệnh đề ở cấp cao nhất.
Định nghĩa chế độ soi kèo bóng đá truoctran không được chứa các hoạt động đã đặt (Liên minh
, Intersect
hoặcngoại trừ
) ở cấp cao nhất.
Danh sách chọn của chế độ soi kèo bóng đá truoctran không được chứa bất kỳ tập hợp, chức năng cửa sổ hoặc các hàm quay lại.
22838_23105Chèn
hoặcCập nhật
Câu lệnh cố gắng gán một giá trị cho nó.
Nếu chế độ soi kèo bóng đá truoctran có thể tự động cập nhật, hệ thống sẽ chuyển đổi bất kỳ nàoChèn
, Cập nhật
hoặcXóa
Câu lệnh trên chế độ soi kèo bóng đá truoctran vào câu lệnh tương ứng về mối quan hệ cơ sở cơ bản.Chèn
Câu nói cótrên bản cập nhật xung đột
mệnh đề được hỗ trợ đầy đủ.
Nếu chế độ soi kèo bóng đá truoctran có thể cập nhật tự động chứaWHERE
Điều kiện, Điều kiện hạn chế các hàng của mối quan hệ cơ sở có sẵn để được sửa đổi bởiCập nhật
vàXóa
Câu lệnh trên chế độ soi kèo bóng đá truoctran. Tuy nhiên, mộtCập nhật
được phép thay đổi một hàng để nó không còn thỏa mãnWHERE
Điều kiện, và do đó không còn hiển thị thông qua chế độ soi kèo bóng đá truoctran. Tương tự, mộtChèn
Lệnh có khả năng chèn các hàng liên quan cơ sở không thỏa mãnWHERE
Điều kiện và do đó không hiển thị thông qua chế độ soi kèo bóng đá truoctran (trên Cập nhật xung đột
có thể ảnh hưởng tương tự một hàng hiện tại không hiển thị thông qua chế độ soi kèo bóng đá truoctran). TheTùy chọn kiểm tra
có thể được sử dụng để ngăn chặnChèn
vàCập nhật
Các lệnh từ việc tạo các hàng như vậy không hiển thị thông qua chế độ soi kèo bóng đá truoctran.
Nếu chế độ soi kèo bóng đá truoctran có thể cập nhật tự động được đánh dấu bằngSecurity_Barrier
thuộc tính thì tất cả các chế độ soi kèo bóng đá truoctranWHERE
Điều kiện (và mọi điều kiện sử dụng các toán tử được đánh dấu làLeakproof
) sẽ luôn được đánh giá trước mọi điều kiện mà người dùng của chế độ soi kèo bóng đá truoctran đã thêm. Nhìn thấyPhần 40.5Để biết chi tiết đầy đủ. Lưu ý rằng, do đó, các hàng không được trả về cuối cùng (vì chúng không vượt qua người dùngWHERE
Điều kiện) vẫn có thể bị khóa.Giải thích
Có thể được sử dụng để soi kèo bóng đá truoctran các điều kiện nào được áp dụng ở cấp độ quan hệ (và do đó không khóa các hàng) và cái nào không.
Một quan điểm phức tạp hơn không thỏa mãn tất cả các điều kiện này chỉ được đọc theo mặc định: Hệ thống sẽ không cho phép chèn, cập nhật hoặc xóa trên chế độ soi kèo bóng đá truoctran. Bạn có thể nhận được hiệu ứng của một chế độ soi kèo bóng đá truoctran có thể cập nhật bằng cách tạothay vì
Trình kích hoạt trên chế độ soi kèo bóng đá truoctran, phải chuyển đổi các lần chèn đã cố gắng, v.v. trên chế độ soi kèo bóng đá truoctran thành các hành động thích hợp trên các bảng khác. Để biết thêm thông tin, soi kèo bóng đá truoctranTạo Trigger. Một khả năng khác là tạo các quy tắc (soi kèo bóng đá truoctranTạo quy tắc), nhưng trong thực tế kích hoạt dễ hiểu và sử dụng chính xác.
26287_26636Phần 40.5).
Tạo một chế độ soi kèo bóng đá truoctran bao gồm tất cả các bộ phim hài:
Tạo các bộ phim hài khi LỰA CHỌN * Từ phim WHERE Kind = 'Comedy';
Điều này sẽ tạo một chế độ soi kèo bóng đá truoctran chứa các cột có trongphim
Bảng tại thời điểm tạo soi kèo bóng đá truoctran. Mặc dù*
Đã được sử dụng để tạo chế độ soi kèo bóng đá truoctran, các cột được thêm vào sau vào bảng sẽ không phải là một phần của chế độ soi kèo bóng đá truoctran.
Tạo chế độ soi kèo bóng đá truoctran vớiTùy chọn kiểm tra cục bộ
:
Tạo soi kèo bóng đá truoctran Universal_comedies là LỰA CHỌN * Từ phim hài Trong đó phân loại = 'u' Với tùy chọn kiểm tra cục bộ;
Điều này sẽ tạo chế độ soi kèo bóng đá truoctran dựa trênHài kịch
soi kèo bóng đá truoctran, chỉ hiển thị phim vớiKind = 'Comedy'
vàPhân loại = 'U'
. Mọi nỗ lực đểChèn
hoặcCập nhật
Một hàng trong chế độ soi kèo bóng đá truoctran sẽ bị từ chối nếu hàng mới không cóPhân loại = 'U'
, nhưng bộ phimKind
sẽ không được kiểm tra.
Tạo chế độ soi kèo bóng đá truoctran vớiTùy chọn kiểm tra Cascaded
:
28129_28254
Điều này sẽ tạo một chế độ soi kèo bóng đá truoctran kiểm tra cảKind
vàPhân loại
của các hàng mới.
Tạo chế độ soi kèo bóng đá truoctran với hỗn hợp các cột cập nhật và không thể cập nhật:
Tạo các bộ phim hài khi Chọn f.*, Country_code_to_name (f.country_code) là quốc gia, (Chọn AVG (R.Rating) Từ user_ratings r Trong đó r.film_id = f.id) như avg_rating Từ phim f WHERE F.Kind = 'Comedy';
Chế độ soi kèo bóng đá truoctran này sẽ hỗ trợChèn
, Cập nhật
28889_28896Xóa
. Tất cả các cột từPhim
Bảng sẽ có thể cập nhật, trong khi các cột được tính toánQuốc gia
vàAVG_RATE
sẽ chỉ đọc.
Tạo chế độ soi kèo bóng đá truoctran đệ quy bao gồm các số từ 1 đến 100:
Tạo chế độ soi kèo bóng đá truoctran đệ quy công khai.nums_1_100 (n) Giá trị (1) Liên minh tất cả Chọn N+1 từ nums_1_100 trong đó n <100;
Lưu ý rằng mặc dù tên của chế độ soi kèo bóng đá truoctran đệ quy là sơ đồ trong điều nàyTạo
, Tự tham chiếu nội bộ của nó không đủ điều kiện lược đồ. Điều này là do tên của CTE được tạo ngầm không thể được phân loại.
Tạo hoặc thay thế soi kèo bóng đá truoctran
là mộtPostgreSQLMở rộng ngôn ngữ. Vì vậy, khái niệm của một quan điểm tạm thời. Thevới (...)
mệnh đề cũng là một phần mở rộng.
31416_31642Mẫu nàyĐể báo cáo vấn đề tài liệu.