DB2 - Hệ quản trị cơ sở dữ liệu lớn nhất, mạnh nhất và nhanh nhất trên thế giới
hiện nay do IBM phát triển. So với Oracle, đối thủ chính và mạnh nhất của mình,
DB2 chưa nổi tiếng bằng. Nhưng tin rằng trong tương lai không xa, DB2 chính là sự
lựa chọn tiếp theo cho thế hệ quản trị cơ sở dữ liệu bên cạnh SQL Server của
Microsoft hay Oracle của hãng Oracle.
20 trang |
Chia sẻ: lylyngoc | Lượt xem: 1587 | Lượt tải: 1
Bạn đang xem nội dung tài liệu DB2 9 và Microsoft Excel 2007 -Phần 1: Lấy dữ liệu, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
DB2 9 và Microsoft Excel 2007 -
Phần 1: Lấy dữ liệu
DB2 - Hệ quản trị cơ sở dữ liệu lớn nhất, mạnh nhất và nhanh nhất trên thế giới
hiện nay do IBM phát triển. So với Oracle, đối thủ chính và mạnh nhất của mình,
DB2 chưa nổi tiếng bằng. Nhưng tin rằng trong tương lai không xa, DB2 chính là sự
lựa chọn tiếp theo cho thế hệ quản trị cơ sở dữ liệu bên cạnh SQL Server của
Microsoft hay Oracle của hãng Oracle.
Chắc hẳn nhiều bạn đọc của Quantrimang.com sẽ cảm thấy khá bỡ ngỡ với DB2 8.5 hay
DB2 9.2. Loạt bài này xin giới thiệu một số phương thức ứng dụng DB2 9 với Microsoft
Excel 2007. Hy vọng rằng chúng sẽ hữu ích cho những ai đang quan tâm đến DB2, hệ
quản trị tương lai của cơ sở dữ liệu.
Phần 1: Đưa dữ liệu DB2 9 vào Microsoft Excel 2007
Để đưa dữ liệu vào tệp Excel 2007 từ DB2 Data Server, bạn cần bắt đầu với một kết nối
(database connection). Chức năng này được hỗ trợ trong Excel 2007, ở tab Data (xem
hình bên dưới).
Data tab là chức năng mới trong Microsoft Excel 2007. Với Excel 2007, bạn có thể thực
hiện rất nhiều chức năng về dữ liệu bên cạnh các thao tác thông thường như định dạng,
hiệu chỉnh. Nổi bật nhất là bạn có thể import data (nhập dữ liệu) từ nhiều nguồn khác
nhau vào Excel. Để nhập dữ liệu, bạn sử dụng chức năng “Get External Data” (ở khung
bên trái của tab Data). Đó chính là chức năng bạn cần khi muốn nhập dữ liệu DB2 9 vào
trong một tệp Excel 2007.
Để nhập nội dung dữ liệu của bảng STAFF vào worksheet của một file Excel 2007, thực
hiện các bước sau:
1. Trong tab “Data”, chọn “From Other Sources” > “From Data Connection Wizard”
trong khung “Get External Data”:
Như ở hình trên bạn có thể thấy, Excel 2007 hỗ trợ nhập dữ liệu từ nhiều nguồn khác
nhau (file sql server, sql server analysis services, xml, Microsoft query) vào worksheet.
Nhưng trong khuôn khổ bài báo này, chúng ta sẽ nhập dữ liệu của DB2 9, kiểu data chưa
được định nghĩa trong Excel 2007 nên bạn cần chọn “From Data Connection Wizard”.
2. Cửa sổ “Data Connection Wizard” mở, chọn “Other/Advanced” và kích “Next”.
3. Cửa sổ “Data Link Properties” mở, chọn “IBM OLE DB Provider for DB2” ở
“OLE DB provider(s)” và bấm “Next”.
Khi bạn cài DB2 9 client trên máy mình, “OLE DB provider” tương ứng cũng sẽ được tự
động cài đặt. Và Excel 2007 sẽ sử dụng thành phần này để lấy dữ liệu từ cơ sở dữ liệu
của DB2 về.
Hình minh họa ở bước 2 hiển thị phương thức để bạn có thể lựa chọn kiểu “ODBC
DSN”. Khi nguồn dữ liệu nhập là DB2 database, bạn có thể chọn kiểu cấu hình cơ sở dữ
liệu là người dùng (user), hệ thống (system) hay một file DSN sử dụng tiện ích sẵn có của
Windows - chức năng Data Source (ODBC). Cơ sở dữ liệu mẫu SAMPLE của tôi được
cấu hình là một file DSN hệ thống nên tôi cũng có thể dùng kết nối này để truy vấn dữ
liệu thay vì chỉ đưa dữ liệu vào file Excel 2007.
4. Chọn cơ sở dữ liệu bạn muốn kết nối từ hộp “Specify the DB2 database”. Nhập đầy
đủ và chính xác thông tin đăng nhập cho cơ sở dữ liệu của bạn vào ô “Log on
Information” và kích “Test Connection”.
Nếu cơ sở dữ liệu bạn muốn kết nối không nằm trong loại được xác định trên máy đang
chạy Microsoft Excel 2007, bạn có thể tìm kiếm các Data Server tôn tồn tại và database
của chúng (cũng như các cổng vào DB2 Connect nếu bạn muốn tạo thêm kết nối DB2
vào máy I hay DB2 cho máy Z) bằng cách sử dụng thành phần “DB2 Discovery” tích
hợp trong Excel. Bạn có thể thực hiện một kiểu khác bằng cách chọn nút “Direct server
connection” và chọn một cơ sở dữ liệu từ danh sách “Select the database on the
server” (háy nhấn nút “Refresh” để update danh sách server và danh sách database mới
nhất trước khi lựa chọn).
Hơi ra ngoài phạm trù của bài này một chút, nhưng sẽ tốt hơn khi lưu ý rằng, bạn có thể
dùng chức năng “Advance” để thiết lập các thuộc tính nâng cao cho kết nối này. Chẳng
hạn thiết lập thời gian chờ cho kết nối với “time-out”, hay tạo một hard-coded password.
5. Kích “OK” khi kết nối thành công.
DB2 OLE DB Provider thường được tích hợp đầy đủ trong Excel 2007. Chẳng hạn, nếu
Excel 2007 không thể kết nối tới cơ sở dữ liệu SAMPLE vì database instance bị down,
một thông báo lỗi như bên dưới sẽ được hiển thị:
Nếu cơ sở dữ liệu này đang được dùng (có thể do nó đang ở trạng thái im lặng hoặc một
quá trình backup đang được thực hiện), Excel 2007 sẽ hiển thị thông báo lỗi:
6. “Data Connection Wizard” mở. Chọn bảng có dữ liệu bạn muốn import vào Excel
2007 và kích “Next”. Ví dụ, bạn có thể chọn nội dung của bảng STAFF đặt trong cơ sở
dữ liệu SAMPLE.
Chú ý: Để tạo cơ sở dữ liệu SAMPLE trong DB2 9, bạn cần nhập câu lệnh db2sampl từ
màn hình lệnh Command Prompt của hệ điều hành.
7. Bạn có thể tùy ý khi lại thông tin cho kết nối này hoặc không. Nhưng sẽ tốt hơn nếu
bạn ghi lại để có thể tái sử dụng ở lần sau. Sau đó, kích nút “Finish”.
Nếu bạn không muốn ghi lại kết nối này trong tương lai, đơn giản chỉ cần kích vào nút
“Finish” ở bước trước đó. Trong hình trên bạn có thể thấy rằng, tôi đã ghi lại database
connection hiện tại (là kết nối duy nhất tới bảng STAFF) để sử dụng cho các lần sau. Bạn
có thể tùy ý thêm đoạn mô tả cho đối tượng kết nối này (trong trường “Description”) và
tìm kiếm metadata (trong trường “Search Keywords”) nhằm giúp cho các lần truy vấn
sau dễ dàng hơn. Cuối cùng, chú ý rằng bạn có thể thiết lập các kiểm soát tốt cho phần
authentication bằng cách kích vào “Authentication Settings”.
8. Cửa sổ “Import Data” mở. Sử dụng cửa sổ này để mô tả nơi dữ liệu sẽ được đặt trong
worksheet Excel 2007. Bạn có thể chọn các giá trị mặc định và ấn OK.
Như ở hình trên bạn có thể thấy, nơi lưu trữ dữ liệu DB2 có thể là Table hay Pivot Table
Report hoặc cả hai. Tôi sẽ thảo luận về chúng trong bài tiếp theo. (Nếu bạn muốn cấu
hình chi tiết hơn các thuộc tính của xâu kết nối, kích vào nút Properties).
Trên worksheet của file Excel 2007 sẽ hiển thị dữ liệu dạng:
Tất nhiên, ở điểm này bạn có thể điểu chỉnh việc hiển thị dữ liệu phù hợp với mình thông
qua chức năng formatting hỗ trợ mạnh trong Excel 2007 và áp dụng kiểu Table Style cho
dạng bảng từ tab Design. Ví dụ như:
Bạn có thể dùng chức năng “Table Style Options” trong tab Design như:
Khi dữ liệu được tải về Excel 2007, bạn có thể dùng chức năng “External Table Data”
trong tab Data để quản lý database connection. Ví dụ, chọn Unlink sẽ phân tách dữ liệu
với bảng và biến chúng thành độc lập:
Và bạn có thể lọc nhanh dữ liệu trả về mà không cần phải viết dòng lệnh SQL nào:
Một trong những điểm tôi rất thích ở Excel 2007 là tính năng biểu đồ mạnh. Sử dụng
phương thức này bạn có thể dễ dàng biểu thị dữ liệu DB2 9 của mình dưới dạng các biểu
đồ.
Ở biểu đồ trên bạn có thể thấy tỷ lệ lương và phần trăm hoa hồng cho 5 nhân viên ở
phòng 20. Tất nhiên, chỉ cần bạn không đứt kết nối với tập bản ghi, bạn có thể refresh lại
data, biểu đồ sẽ được update ngay lập tức. Ví dụ, chạy lệnh DML sau để thay đổi phần
trăm hoa hồng Pernal đạt được (Pernal là một nhân viên trong biểu đồ):
UPDATE TABLE STAFF SET COMM=55565.56 WHERE ID=20
Bây giờ, refresh lại dữ liệu:
Và tất nhiên, dữ liệu cơ sở cũng được update:
Chúng ta hãy cùng suy nghĩ lại về cách thức sử dụng dữ liệu thức phổ biến nhất với
Excel: phân dữ liệu vào trong một Data Server không chính thức. Như vậy, nếu dữ liệu
thật của bạn thay đổi thì các phân tích của bạn cho dữ liệu thực sẽ là khi nào? Chúng ta
hãy cùng chờ câu trả lời ở bài tiếp theo nhé.
Tóm tắt
Trong bài này chúng ta đã cùng tìm hiểu cách thức đơn giản và dễ dàng để import dữ liệu
DB2 9 vào file Excel 2007. Bên cạnh đó chúng ta cũng biết đến một số thành phần hữu
ích để thay đổi cách thức dữ liệu được hiển thị (sử dụng các chức năng khác nhau của
Table Tools) cũng như cách tạo một biểu đồ trong Excel và cách refresh lại dữ liệu thực.