Tiến hành sao chụp một phần

Một phần của tài liệu Truy cập dữ liệu từ xa (Trang 29 - 32)

Sau khi tạo một bản sao một phần, ta cú thể copy cỏc mẩu tin từ bản sao toàn phần hoặc Bản thiết kế gốc theo cỏc bước sau đõy :

1. Trong chương trỡnh sử dụng DAO, khai bỏo và quy định giỏ trị cho biến đối tượng Database là cơ sở dữ liệu bản sao một phần.

2. Khai bỏo biến TableDef cho cỏc bảng trong bản sao một phần để chứa dữ liệu sao chụp.

3. Quy định thuộc tớnh ReplicaFilter của từng đối tượng TableDef là một điều kiện WHERE của cõu SQL. Nú xỏc định cỏc mẩu tin sẽ được copy vào bản sao một phần.

4. Thi hành phương thức PopulatePartial của đối tượng Database, chỉ ra đường dẫn và tờn tập tin của bản thiết kế gốc hoặc bản sao toàn phần mà ta muốn copy từ đú.

Cú thể dựng thuộc tớnh ReplicaFilter của đối tượng TableDef để sao chụp tập con cỏc mẩu tin từ cơ sở dữ liệu đến cơ sở dữ liệu bản sao một phần. Thuộc tớnh

ReplicaFilter cú thể chứa một trong 3 giỏ trị :

• Nếu ReplicaFilter True, toàn bộ cỏc mẩu tin trong cơ sở dữ liệu nguồn được copy vào cơ sở dữ liệu bản sao một phần.

• Nếu ReplicaFilter False, khụng cú mẩu tin nào từ cơ sở dữ liệu nguồn được copy vào bản sao một phần.

• Nếu ReplicaFilter là một chuỗi, bộ mỏy cơ sở dữ liệu xem đú là mệnh đề WHERE của cõu SQL.

Để gỏn một bộ lọc bản sao và copy cỏc mẩu tin từ Bản thiết kế gốc hoặc bản sao toàn phần vào bản sao một phần, dựng đoạn chương trỡnh sau :

Option Explicit

' References DAO 3.51 Private db As Database Private td As TableDef

Const MasterDBPath = "..\..\DB\nmaster.mdb" Const ReplicaPath = "..\..\DB\npartial.mdb" Private Sub cmdMakePartial_Click()

Set db = OpenDatabase(MasterDBPath)

db.Close

Set db = Nothing End Sub

Private Sub cmdReplicate_Click()

' Open partial replica in exclusive mode Set db = OpenDatabase(ReplicaPath, True) Set td = db.TableDefs("tblCustomer") td.ReplicaFilter = "State = 'CA'"

' Populate with data from design master db.PopulatePartial MasterDBPath ' Release exclusive lock on database Set db = Nothing

End Sub

Khi ta thi hành đoạn chương trỡnh trờn, chỉ những khỏch hàng sống ở tiểu bang California được copy vào bản sao một phần.

Hỡnh 1. TỔNG KẾT

Chương này đề cập 2 vấn đề chủ yếu khi phõn phỏt dữ liệu qua mạng đến nhiều người sử dụng. Trong phần đầu, bạn đó tỡm hiểu cỏch thức sử dụng cỏc thành phần ActiveX để truy cập dữ liệu theo hướng đối tượng. Nú cũng thảo luận về triển khai DCOM với thành phần ActiveX, cho phộp ta triển khai cỏc đối tượng kinh doanh qua mạng LAN.

Trong phần thứ hai, ta tỡm hiểu về cỏch thức sao chụp cơ sở dữ liệu Jet qua mạng để phõn phỏt dữ liệu qua 2 hay nhiều tập tin cơ sở dữ liệu.

Mặc dự chủ đề về cỏc thành phần tầng trung gian ActiveX và sao chụp cơ sở dữ liệu núi ở 2 phần riờng, nhưng khụng cú nghĩa là chỳng loại trừ lẫn nhau. Trong chương

trỡnh, bạn cú thể phối hợp cả hai kỹ thuật để phõn phỏt dữ liệu theo diện xa và rộng. Dựng kỹ thuật nào là tuỳ thuộc vào cấu trỳc chương trỡnh, số người sử dụng cần hỗ trợ, và mức độ yờu cầu giữ cho dữ liệu nhất quỏn.

HỎI VÀ ĐÁP

Hỏi : Tụi vừa tạo cỏc thư viện ActiveX DLL dựng để truy cập dữ liệu. Tụi cú cần biờn dịch lại thành Active EXE để truy cập chỳng qua mạng từ xa khụng ?

Đỏp: Khụng. Nếu bạn dựng Microsoft Transaction Server, bạn cú thể đúng gúi cỏc thư viện ActiveX DLL ngay và truy cập chỳng từ xa. Triển khai cỏc thành phần từ xa dựng kỹ thuật MTS đó được trỡnh bày ở đầu chương.

Hỏi : Khi tụi đang tiến hành sao chụp cơ sở dữ liệu, hệ thống cơ sở dữ liệu chủ yếu là off-line. Vậy làm sao để biết nú sẽ tốn bao lõu ?

Đỏp: Bởi vỡ cú rất nhiều yếu tố ảnh hưởng, lượng dữ liệu ta cần thao tỏc, băng thụng trờn mạng, tốc độ mỏy tớnh xử lý cỏc mẩu tin. Nếu gặp phải rắc rối này khi tiến hành sao chụp cơ sở dữ liệu, bạn cú thể thử quỏ trỡnh tự động nếu được ( viết một ứng dụng Visual Basic để đồng bộ hoỏ dữ liệu lỳc cơ sở dữ liệu khụng được sử dụng nhiều – như vào ban đờm chẳng hạn ). Bạn cũng cú thể thử dựng bản sao một phần để giảm thiểu lượng dữ liệu được copy.

Hỏi: Bởi vỡ sao chụp một phần cho phộp tuỳ chọn khụng sao chụp, hoặc sao chụp một phần hoặc sao chụp toàn bộ mẩu tin; trong thực tế, ta khụng thể chuyển đổi qua lại giữa sao chụp một phần và toàn phần, tại sao khụng để tất cả chỉ là sao chụp một phần ?

Đỏp:Bạn chỉ cú thể đồng bộ hoỏ giữa Bản thiết kế gốc và bản sao toàn phần, khụng cho phộp đồng bộ hoỏ giữa bản sao một phần và bản sao khỏc. Điều này cung cấp sự linh hoạt trong những trường hợp mà bạn muốn đồng bộ hoỏ nhiều bản sao với nhau để giảm bớt ỏp lực phải xử lý trờn mỏy tớnh chứa Bản thiết kế gốc.

Một phần của tài liệu Truy cập dữ liệu từ xa (Trang 29 - 32)

Tải bản đầy đủ (DOCX)

(22 trang)
w