10122_10155 | ||||
---|---|---|---|---|
prev | UP | Chương 38. cách đọc kèo bóng đá Hệ thống | Tiếp theo |
Nhiều điều có thể được thực hiện bằng cách sử dụng các trình kích cách đọc kèo bóng đá cũng có thể được triển khai bằng cách sử dụngPostgreSQLHệ thống cách đọc kèo bóng đá. Một trong những điều không thể được thực hiện bởi các cách đọc kèo bóng đá là một số loại hạn chế, đặc biệt là khóa nước ngoài. Nó là có thể đặt một cách đọc kèo bóng đá đủ điều kiện viết lại lệnh thànhKhông có gìNếu giá trị của cột không xuất hiện trong một bảng khác. Nhưng sau đó, dữ liệu được âm thầm vứt đi Và đó không phải là một ý kiến hay. Nếu kiểm tra các giá trị hợp lệ là bắt buộc và trong trường hợp giá trị không hợp lệ, một thông báo lỗi nên được tạo, nó phải được thực hiện bằng một kích cách đọc kèo bóng đá.
Trong chương này, chúng tôi tập trung vào việc sử dụng các cách đọc kèo bóng đá để cập nhật chế độ xem. Tất cả của các ví dụ về cách đọc kèo bóng đá cập nhật trong chương này cũng có thể được thực hiện sử dụngthay vìKích hoạt trên các chế độ xem. Viết các kích hoạt như vậy thường dễ dàng hơn so với các cách đọc kèo bóng đá viết, đặc biệt nếu cần phải thực hiện logic phức tạp để thực hiện cập nhật.
Đối với những điều có thể được thực hiện bởi cả hai, điều này là tốt nhất Phụ thuộc vào việc sử dụng cơ sở dữ liệu. Một kích hoạt được bắn một lần cho mỗi hàng bị ảnh hưởng. Một cách đọc kèo bóng đá sửa đổi truy vấn hoặc tạo Truy vấn bổ sung. Vì vậy, nếu nhiều hàng bị ảnh hưởng trong một tuyên bố, một cách đọc kèo bóng đá phát hành một lệnh bổ sung có thể nhanh hơn kích hoạt được gọi cho mỗi hàng và phải xác định lại Làm gì nhiều lần. Tuy nhiên, phương pháp kích hoạt là về mặt khái niệm đơn giản hơn nhiều so với cách tiếp cận cách đọc kèo bóng đá và dễ dàng hơn cho Người mới đi đúng.
Ở đây chúng tôi trình bày một ví dụ về cách lựa chọn các cách đọc kèo bóng đá so với Trình kích hoạt diễn ra trong một tình huống. Có hai bảng:
Tạo máy tính bảng ( Textname HostN, - được lập chỉ mục văn bản nhà sản xuất - được lập chỉ mục ); Tạo phần mềm bảng ( Văn bản phần mềm, - được lập chỉ mục Tên máy chủ - được lập chỉ mục );
12638_12699tên máy chủlà duy nhất. cách đọc kèo bóng đá hoặc Trình kích hoạt nên thực hiện một ràng buộc xóa các hàng khỏiPhần mềmTài liệu tham khảo đã bị xóa máy tính. Trình kích cách đọc kèo bóng đá sẽ sử dụng lệnh này:
Xóa khỏi phần mềm trong đó hostName = $ 1;
Vì kích cách đọc kèo bóng đá được gọi cho mỗi hàng riêng lẻ bị xóa khỏimáy tính, nó có thể chuẩn bị và tiết kiệm kế hoạch cho lệnh này và vượt quatên máy chủGiá trị trong tham số. cách đọc kèo bóng đá sẽ được viết là:
Tạo cách đọc kèo bóng đá máy tính_del như đang xóa vào máy tính Xóa khỏi phần mềm trong đó hostName = old.hostName;
13415_13477
Xóa khỏi máy tính WHERE hostName = 'mypc.local.net';
13574_13586Máy tínhđược quét bởi Index (nhanh) và lệnh do bộ kích hoạt ban hành cũng sẽ sử dụng Quét chỉ mục (cũng nhanh). Lệnh bổ sung từ cách đọc kèo bóng đá sẽ là:
Xóa khỏi phần mềm trong đó máy tính.hostname = 'mypc.local.net' Và phần mềm.hostname = máy tính.hostName;
Vì có thiết lập chỉ mục phù hợp, người lập kế hoạch sẽ Tạo một kế hoạch của
Nestloop - Quét chỉ mục bằng comp_hostidx trên máy tính - SCAN INDEX bằng Soft_Hostidx trên phần mềm
Vì vậy, sẽ không có nhiều sự khác biệt về tốc độ giữa Trình kích hoạt và thực hiện cách đọc kèo bóng đá.
cách đọc kèo bóng đá xóa tiếp theo, chúng tôi muốn loại bỏ tất cả năm 2000 máy tính trong đótên máy chủBắt đầu cách đọc kèo bóng đácũ. Có hai lệnh có thể để làm điều đó. Một là:
Xóa khỏi máy tính trong đó tên máy chủ = 'cũ' Và tên máy chủ <'ole'
Lệnh được thêm vào cách đọc kèo bóng đá sẽ là:
Xóa khỏi phần mềm trong đó máy tính. Và phần mềm.hostname = máy tính.hostName;
cách đọc kèo bóng đá kế hoạch
băm tham gia - SEQ Scan trên phần mềm - Hash - SCAN INDEX bằng comp_hostidx trên máy tính
Lệnh khác có thể là:
Xóa khỏi máy tính trong đó tên máy chủ ~ '^cũ';
Kết quả trong kế hoạch thực hiện sau đây cho lệnh được thêm bởi cách đọc kèo bóng đá:
Nestloop - Quét chỉ mục bằng comp_hostidx trên máy tính - SCAN INDEX bằng Soft_Hostidx trên phần mềm
Điều này cho thấy rằng người lập kế hoạch không nhận ra rằng Trình độ chuyên môn chotên máy chủinmáy tínhcũng có thể được sử dụng cho một chỉ mục quét trênPhần mềmKhi có nhiều Biểu thức đủ điều kiện kết hợp cách đọc kèo bóng đávà, đó là những gì nó làm trong biểu hiện thông thường phiên bản của lệnh. Bộ kích cách đọc kèo bóng đá sẽ được gọi một lần cho mỗi trong số 2000 máy tính cũ phải bị xóa, và điều đó sẽ kết quả là một chỉ mục quét quaMáy tínhvà 2000 chỉ số quét quaPhần mềm. cách đọc kèo bóng đá Việc thực hiện sẽ làm điều đó với hai lệnh sử dụng các chỉ mục. Và Nó phụ thuộc vào kích thước tổng thể của bảngPhần mềm16146_16354
Lệnh cuối cùng chúng ta xem là:
Xóa khỏi máy tính trong đó nhà sản xuất = 'bim';
Một lần nữa điều này có thể dẫn đến nhiều hàng bị xóa khỏimáy tính. Vì vậy, kích hoạt sẽ lại chạy Nhiều lệnh thông qua người thực thi. Lệnh được tạo bởi cách đọc kèo bóng đá sẽ là:
Xóa khỏi phần mềm trong đó máy tính. Và phần mềm.hostname = máy tính.hostName;
Kế hoạch cho lệnh đó sẽ lại là vòng lặp lồng nhau trên hai chỉ mục quét, chỉ sử dụng một chỉ mục khác trênmáy tính:
Nestloop - Quét chỉ mục bằng comp_manufidx trên máy tính - SCAN INDEX bằng Soft_Hostidx trên phần mềm
Trong bất kỳ trường hợp nào, các lệnh bổ sung từ hệ thống cách đọc kèo bóng đá sẽ độc lập nhiều hơn hoặc ít hơn với số lượng các hàng bị ảnh hưởng trong một lệnh.
Tóm tắt là, các cách đọc kèo bóng đá sẽ chỉ chậm hơn đáng kể so với kích hoạt nếu hành động của họ dẫn đến đủ điều kiện lớn và kém tham gia, một tình huống mà người lập kế hoạch thất bại.