Giáo trình Xây dựng cơ sở dữ liệu khí tượng-Thuỷ văn tỉnh Quảng Trị - Lê Văn Nghinh

pdf 11 trang huongle 2400
Bạn đang xem tài liệu "Giáo trình Xây dựng cơ sở dữ liệu khí tượng-Thuỷ văn tỉnh Quảng Trị - Lê Văn Nghinh", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_xay_dung_co_so_du_lieu_khi_tuong_thuy_van_tinh_qu.pdf

Nội dung text: Giáo trình Xây dựng cơ sở dữ liệu khí tượng-Thuỷ văn tỉnh Quảng Trị - Lê Văn Nghinh

  1. XÂY DỰNG CƠ SỞ DỮ LIỆU KHÍ TƯỢNG – THUỶ VĂN TỈNH QUẢNG TRỊ PGS.TS Lê Văn Nghinh KS. Vũ Thanh Tú KS. Đặng Đình Nghĩa Tóm tắt: Cơ sở dữ liệu là một tập hợp có sắp xếp các thông tin, dữ liệu về một vấn đề nào đó, nhằm giúp cho người sử dụng dễ dàng tra cứu, sử dụng và cập nhật. Chính vì lẽ đó, với loại số liệu đa dạng, lượng số liệu nhiều, số liệu Khí tượng – Thuỷ văn của các trạm đo cần được lưu trữ trong các hệ quản trị cơ sở dữ liệu nhằm phục vụ cho các mục đích khai thác sử dụng sau này. Bài báo sẽ đề cập tới việc xây dựng 1 phần mềm quản lý dữ liệu khí tượng – thuỷ văn cho tỉnh Quảng Trị nhằm đem lại những hiệu quả thiết thực trong công tác quản lý dữ liệu. I. TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU 1.1 Khái niệm về Cơ sở dữ liệu và sự cần thiết của nó Cơ sở dữ liệu (CSDL) là một tập hợp có sắp xếp các thông tin, dữ liệu về một vấn đề nào đó, nhằm giúp cho người sử dụng dễ dàng tra cứu, sử dụng và cập nhật. Ngày nay nhu cầu tích lũy, lưu trữ, và xử lý dữ liệu đã có mặt trên mọi lĩnh vực, trong mọi hoạt động của con người. Những thông tin ngày càng lớn và phức tạp buộc con người phải sắp xếp các thông tin sao cho có khoa học. Vì vậy đòi hỏi họ phải sử dụng CSDL. 1.2 Hệ Quản trị Cơ sở dữ liệu Là một công cụ cho phép quản lý và tương tác với CSDL, hệ Quản trị CSDL cho phép xử lý, thay đổi, truy xuất dữ liệu nhằm giúp người sử dụng có thể dùng được hệ thống mà ít nhiều không cần quan tâm đến thuật toán chi tiết hoặc biểu diễn dữ liệu trong máy tính. Cơ sở dữ liệu hướng đối tượng: là một phương pháp tổ chức dữ liệu mới trong hệ quản trị CSDL [1] + Mục đích là nhằm tạo ra các đối tượng có thể dùng lại nhiều lần cho nhiều chương trình, nhờ vậy giảm thiểu được thời gian lập trình và giảm thiểu sai sót. + Người dùng có thể tạo ra các đối tượng mới kế thừa các đối tượng cũ có sẵn, các đối tư- ợng mới sẽ chứa đầy đủ các thuộc tính và các phương thức của đối tượng gốc. CSDL càng dễ dàng cung cấp thông tin cho người dùng bao nhiêu, thuận tiện cho quản lý, cập nhật bao nhiêu thi càng được đánh giá cao bấy nhiêu. 1.3 Cấu trúc dữ liệu Khí tượng - Thủy văn Đối với việc quản lý các dữ liệu Khí tượng, Thủy văn thì CSDL chính là những thông tin về hệ thống mạng lưới các Trạm khí tượng, thủy văn cùng với những số liệu mà các trạm quan trắc được như: nắng, nhiệt độ, độ ẩm, bốc hơi, gió, mưa, mực nước, lưu lượng. Việc dùng các phần mềm để tổ chức và xử lý những dữ liệu đó phục vụ cho từng bài toán cụ thể trong thủy văn là một hệ Quản trị CSDL. Để việc quản lý dữ liệu đem lại hiệu quả cao, trước tiên phải xây dựng được cấu trúc của CSDL. Để quản lý tốt CSDL mỗi trạm được đặt một mã số để nhận dạng, cũng là phục vụ cho các yêu cầu cụ thể của bài toán thủy văn.
  2. 1.4 Lựa chọn công cụ để xây dựng Cơ sở dữ liệu Hiện nay có rất nhiều hệ quản trị CSDL khác nhau như Foxpro, Microsoft Access, MS SQL, mỗi Hệ quản trị CSDL đều có những ưu điểm cũng như nhược điểm riêng. Trước kia khi nói đến quản lý CSDL là người ta thường nghĩ ngay đến Foxpro, FoxBase. Tuy nhiên, có thể nhận thấy với những cải tiến đáng kể MS Access thể hiện nhiều đặc tính ưu việt hơn Foxpro là tính đơn giản, thuận tiện và hiệu quả trong quản lý dữ liệu. MS Access có tính năng cho phép thiết kế các biểu mẫu (layout) cho phép cập nhật và hiển thị dữ liệu theo nhiều kiểu khác nhau. Tuy nhiên, để nâng cao hơn nữa tính tiện dụng trong quản lý dữ liệu, MS Access cho phép liên kết với một số phần mềm lập trình ứng dụng khác, điển hình là Visual Basic 6.0. Với sự kết hợp của Visual Basic và MS Access có thể xây dựng các phần mềm quản lý cơ sở dữ liệu khí tượng – thuỷ văn đảm bảo tính thuận tiện cho người sử dụng trong cập nhật, truy xuất thông tin. II. XÂY DỰNG CƠ SỞ DỮ LIỆU KHÍ TƯỢNG – THUỶ VĂN Số liệu khí tượng - thủy văn là cơ sở cho nhiều bài toán khác nhau. Mỗi tỉnh đều có hệ thống quan trắc riêng, trong bài báo này chúng tôi tiến hành xây dựng cơ sở dữ liệu cho tỉnh Quảng Trị làm ví dụ. 2.1 Số liệu đầu vào Mỗi Trạm Khí tượng – Thuỷ văn được cấp một mã riêng, giúp cho việc quản lý số liệu có tính hệ thống, việc lưu trữ, cập nhật dữ liệu dễ dàng và tránh nhầm lẫn. Các số liệu được Trung tâm Tư liệu Quốc gia tổng hợp và lưu thành các file riêng cho từng trạm. Với các trạm khí tượng thủy văn thuộc tỉnh Quảng Trị được mã hoá như bảng 2-1: Bảng 2-1: Mã số các trạm khí tượng – thuỷ văn Tỉnh Quảng Trị Tên Trạm Mã Trạm Tên Trạm Mã Trạm Thạch Hãn 110144 Cửa Việt 110142 Đông Hà 210871 Gia Vòng 110141 Khe Sanh 210873 Cồn Cỏ 210870 * Các số liệu lưu trữ trong CSDL bao gồm: - Số liệu về khí tượng: số liệu được quan trắc như nắng, nhiệt độ, độ ẩm, gió, bốc hơi, những số liệu này được tổng hợp theo các tháng trong năm. - Số liệu thuỷ văn: số liệu về lượng mưa, dòng chảy, mực nước tại trạm đo. - Các tài liệu bản đồ lưu vực, bản đồ mạng lưới sông, bản đồ vị trí của các trạm trên lưu vực 2.2 Xây dựng cấu trúc dữ liệu Các bảng dữ liệu được xây dựng trong Mircosoft Access là các bảng lưu trữ các số liệu khí tượng - thủy văn. Tùy thuộc vào mỗi loại số liệu, các bảng dữ liệu sẽ có những trường thuộc tính khác nhau.
  3. 2.2.1 Xây dựng cấu trúc dữ liệu nắng, nhiệt độ, độ ẩm, gió, bốc hơi Các yếu tố khí tượng được đo đạc tại các trạm Đông Hà, Khe Sanh, Cồn Cỏ. Với những số liệu khí tượng đầu vào như đã trình bày ta xây dựng cho mỗi trạm các bảng để quản lý số liệu như sau: - Nắng: Các số liệu cần lưu trữ và quản lý trong CSDL gồm số giờ nắng trung bình tháng, số giờ nắng lớn nhất tháng và số giờ nắng nhỏ nhất trong tháng. Mỗi thành phần được lưu trong các bảng với các trường dữ liệu khác nhau, cấu trúc bảng dữ liệu về số giờ nắng trung bình tháng được định dạng như Bảng 2-2 dưới đây Bảng 2-2 Cấu trúc bảng số giờ nắng trung bình tháng Tên Nang Nang Nang Nang Nang Nang Nang Nang Nang Nang Nang Nang Năm trường 1tb 2tb 3tb 4tb 5tb 6tb 7tb 8tb 9tb 10tb 11tb 12tb Number Number Number Number Number Number Number Number Number Number Number Number Kiểu Text dữ liệu Năm Số Số Số Số Số Số Số Số Số Số Số Số quan giờ giờ giờ giờ giờ giờ giờ giờ giờ giờ giờ giờ ý trắc nắng nắng nắng nắng nắng nắng nắng nắng nắng nắng nắng nắng nghĩa TB TB TB TB TB TB TB TB TB TB TB TB tháng tháng tháng tháng tháng tháng tháng tháng tháng tháng tháng tháng 1 2 3 4 5 6 7 8 9 10 11 12 Cấu trúc bảng số giờ nắng lớn nhất tháng và cấu trúc bảng số giờ nắng nhỏ nhất tháng cũng được thiết lập tương tự như cấu trúc bảng số giờ nắng trung bình tháng (Bảng 2-2). - Để lưu trữ dữ liệu các yếu tố khí tượng khác như nhiệt độ, độ ẩm, bốc hơi ta cũng xây dựng các đặc trưng thành 3 bảng có cấu trúc tương tự như trên cho mỗi trạm. Nhưng với gió ta chỉ xây dựng hai bảng: vận tốc gió trung bình tháng và vận tốc gió lớn nhất tháng. 2.2.2 Xây dựng cấu trúc dữ liệu mưa Các trạm đo mưa trong tỉnh Quảng Trị gồm 6 trạm chính: Đông Hà, Khe Sanh, Cồn Cỏ, Gia Vòng, Thạch Hãn, Cửa Việt. Ngoài lưu trữ các số liệu mưa ngày của các trạm, trong chương trình có module tính toán từ chuỗi số liệu mưa ngày để có được lượng mưa 1, 3, 5 ngày lớn nhất và tổng lượng mưa năm. Như vậy các số liệu cần lưu trữ và quản lý trong cơ sở dữ liệu gồm: lượng mưa ngày, tổng lượng mưa năm, lượng mưa 1, 3, 5 ngày max và ngày xuất hiện. Dữ liệu bao gồm các bảng sau:
  4. Bảng 2-3: Cấu trúc bảng mưa ngày STT Tên trường Kiểu dữ liệu Ý nghĩa 1 Ngay Date Ngày mưa 2 X Number Lượng mưa Bảng 2-4: Cấu trúc bảng đặc trưng mưa STT Tên trường Kiểu dữ liệu Ý nghĩa 1 Nam Number Năm quan trắc số liệu 2 X1max Number Lượng mưa 1 ngày lớn nhất 3 Ngayx1max Text:20 Ngày có lượng mưa lớn nhất 4 X3max Number Lượng mưa 3 ngày lớn nhất Ngày bắt đầu và ngày kết thúc lượng 5 Ngayx3max Text:20 mưa ba ngày lớn nhất. 6 X5max Number Lượng mưa 5 ngày lớn nhất Ngày bắt đầu và ngày kết thúc lượng 7 Ngayx5max Text:20 mưa 5 ngày lớn nhất. 8 Xnam Number Tổng lượng mưa năm Trong CSDL có phần tính lượng mưa năm, mưa 1, 3, 5 ngày lớn nhất ứng với tần suất thiết kế. Dựa vào bảng CSDL, ta có thể tính được các thông số thống kê và lượng mưa ứng với tần suất thiết kế thông qua chương trình vẽ đường tần suất. Bảng 2-5: Cấu trúc bảng mưa thiết kế STT Tên trường Kiểu dữ liệu Ý nghĩa 1 Muatk Text :10 Đặc trưng thiết kế 2 Cv Number Hệ số biến đổi 3 Cs Number Hệ số không đối xứng 4 Xtb Number Trị trung bình của chuỗi số liệu 2.2.3 Xây dựng cấu trúc dữ liệu dòng chảy Quảng Trị có 4 trạm trạm thủy văn là Đông Hà, Gia Vòng, Thạch Hãn, Cửa Việt. Trong đó trạm Gia Vòng trên sông Bến Hải quan trắc lưu lượng và mực nước, còn các trạm thủy văn khác thì chỉ quan trắc mực nước. - Mực nước: Từ số liệu mực nước trung bình ngày chương trình có khả năng tính toán mực nước trung bình tháng, mực nước lớn nhất tháng và mực nước nhỏ nhất tháng cho mỗi năm. Số liệu đo đạc mực nước của các trạm, được thể hiện trong bảng sau:
  5. Bảng 2-6: Cấu trúc bảng mực nước trung bình ngày STT Tên trường Kiểu dữ liệu Ý nghĩa 1 Ngay Date Ngày 2 H Number Mực nước trung bình ngày + Cấu trúc các bảng mực nước trung bình, lớn nhất và nhỏ nhất tháng được xây dựng tương tự như đặc trưng khí tượng. - Lưu lượng: Từ số liệu lưu lượng trung bình ngày chương trình cho phép tính toán lưu lượng trung bình tháng, lưu lượng lớn nhất tháng vá lưu lượng nhỏ nhất tháng. Số liệu lưu lượng dòng chảy được lưu trữ thể hiện trong bảng: Bảng 2-7: Cấu trúc bảng lưu lượng trung bình ngày STT Tên trường Kiểu dữ liệu Ý nghĩa 1 Ngay Date Ngày 2 Q Number Lưu lượng trung bình ngày + Cấu trúc các bảng lưu lượng trung bình, lớn nhất và nhỏ nhất tháng được xây dựng tương tự như các đặc trưng khí tượng. Với các định dạng cấu trúc bảng cho mỗi loại số liệu khí tượng thuỷ văn như trên, các bảng dữ liệu được quản lý trong Mircosoft Access tại Tab Tables, thể hiện trong hình 2-1 dưới đây: Hình 2-1: Quản lý các bảng dữ liệu trong MS Accesss 2.3 Xử lý số liệu Microsoft Access hỗ trợ cho việc quản lý dữ liệu các chức năng như: cập nhật dữ liệu và đặc biệt là chức năng truy xuất dữ liệu bằng câu lệnh truy vấn SQL. Điều này rất quan trọng đối
  6. với bài toán quản lý số liệu khí tượng thủy văn. Vì ta có thể sử dụng các câu truy vấn SQL để truy xuất những số liệu có trong CSDL tùy theo yêu cầu của từng bài toán cụ thể một cách đầy đủ và chính xác nhất. 2.3.1 Cập nhật dữ liệu Từ các số liệu đầu vào, với sự trợ giúp của Microsoft Access, chương trình xây dựng Module cập nhật dữ liệu tự động theo mã các trạm cho từng trạm và lưu vào trong CSDL. Cập nhật dữ liệu trong Microsoft Access bao gồm: - Sử dụng Recordset để kết nối đến bảng dữ liệu cần cập nhật - Cập nhật các dữ liệu vào trong CSDL thông qua Recordset: + Phương thức cập nhật: .Add New .Update Cập nhật dữ liệu từ file Excel: - Đọc dữ liệu: Chương trình cho người sử dụng tìm đến file số liệu đầu vào cần cập nhật và đọc các số liệu ghi trong bảng Excel: + Năm quan trắc của số liệu được ghi trong Cells + Các số liệu theo từng ngày sẽ được chương trình đọc và chuyển đổi nó thành các mảng ghi số liệu quan trắc tương ứng với ngày tháng năm đã được chuyển đổi theo đúng định dạng chuẩn. - Lưu và cập nhật dữ liệu vừa đọc được: Sau khi số liệu đã được chương trình đọc và chuyển đổi với các trường tương ứng theo thứ tự, chương trình sẽ tiến hành cập nhật và lưu các số liệu từ các mảng này vào trong CSDL. 2.3.2 Tính toán trong cơ sở dữ liệu và truy xuất dữ liệu Từ các số liệu đầu vào gồm mưa, mực nước và lưu lượng dòng chảy tại các trạm, chương trình cho phép tính toán xác định lượng mưa 1,3,5 ngày lớn nhất, mực nước và lưu lượng dòng chảy trung bình, lớn nhất, nhỏ nhất tháng. Việc tính toán này sẽ đáp ứng đa dạng hơn về truy xuất cho người khai thác dữ liệu trong CSDL này. III. GIAO DIỆN TRONG PHẦN MỀM CƠ SỞ DỮ LIỆU TỈNH QUẢNG TRỊ 3.1 Giới thiệu chung Với hệ thống các danh mục và các thanh công cụ, và hệ thống nút lệnh (command button) chương trình cho phép người sử dụng có thể truy vấn các thông tin cần thiết, xử lý các số liệu khí tượng thủy văn bằng việc lựa chọn và click hoạt, mang tính trực quan cao, dễ dàng và thuận tiện cho người sử dụng. Dưới đây là một số các giao diện chính trong phần mềm Cơ sở dữ liệu tỉnh Quảng Trị (QTRD): - Bản đồ thể hiện mạng lưới sông suối chính trong tỉnh, với mạng lưới các trạm khí tượng – thuỷ văn. Với thanh công cụ trong chương trình, người sử dụng có thể phóng to, thu nhỏ, di chuyển tới vùng quan tâm.
  7. Hình 3-1: Giao diện với bản đồ số tỉnh Quảng Trị 3.2 Quản lý số liệu khí tượng Các Form quản lý số liệu khí tượng được thiết kế tương tự nhau, quản lý và hiển thị số liệu trung bình, lớn nhất, nhỏ nhất tháng. Các số liệu này được hiển thị trên các Tab khác nhau. Hình 3-2: Giao diện quản lý số liệu Khí tượng (Nhiệt độ)
  8. Hình 3-3: Giao diện Biểu đồ giá trị trung bình tháng 3.3 Quản lý số liệu mưa Các Tab quản lý số liệu bao gồm: Tab quản lý số liệu mưa ngày, tab quản lý các đặc trưng tính toán mưa bao gồm lượng mưa 1,3,5 ngày lớn nhất và tổng lượng mưa năm, Tab quản lý các thông số thống kê và việc tính toán vẽ đường tần suất, tính mưa thiết kế. Hình 3-4: Giao diện quản lý số liệu mưa
  9. Hình 3-5: Giao diện tính toán lượng mưa 1, 3, 5 ngày lớn nhất và tổng lượng mưa năm Hình 3-6: Giao diện lựa chọn các giá trị tần suất TK để tính toán mưa TK tương ứng. 3.4 Quản lý số liệu dòng chảy Các Form giao diện quản lý số liệu mực nước, lưu lượng dòng chảy:
  10. Hình 3-7: Giao diện quản lý số liệu mực nước Hình 3-8: Giao diện hiển thị giá trị mực nước trung bình tháng tính toán IV. KẾT LUẬN – KIẾN NGHỊ Phần mềm Cơ sở dữ liệu tỉnh Quảng Trị được xây dựng bằng ngôn ngữ lập trình Visual Basic 6.0 kết hợp với phần mềm MS Access nhằm mục đích nâng cao sự tiện dụng trong quản lý số liệu khí tượng thủy văn cho tỉnh Quảng Trị. Khi khai thác và sử dụng chương trình người sử dụng có thể thực hiện những chức năng sau: - Cập nhật, lưu trữ và quản lý các số liệu khí tượng thủy văn. - Tra cứu thông tin về số liệu khí tượng thủy văn của một trạm cụ thể. - Xác định một số đặc trưng cụ thể cho các bài toán như: lượng mưa 1, 3, 5 ngày lớn nhất; tổng lượng mưa; mực nước lớn nhất, trung bình, nhỏ nhất; dòng chảy lớn nhất, trung bình và nhỏ nhất.
  11. Bước đầu các chức năng của chương trình đã làm việc tốt, việc tính toán và xử lý số liệu cho kết quả chính xác, giao diện thân thiện, dễ sử dụng. Tuy vậy, cũng còn tồn tại một số đặc điểm sau đây: - Việc chia sẻ dữ liệu giữa các máy tính hoặc qua mạng chưa thực hiện được. - Một số chức năng hỗ trợ tìm kiếm còn chưa thực hiện hiệu quả. Với mong muốn phần mềm quản lý dữ liệu khí tượng thủy văn tỉnh Quảng Trị sẽ được đưa vào sử dụng, trong thời gian tới chúng tôi sẽ tiếp tục nâng cấp, cải thiện, nâng cấp một số tính năng và xây dựng các tính năng mới để phần mềm có thể ứng dụng tốt hơn, đạt hiệu quả cao hơn trong việc khai thác thông tin. Tài liệu tham khảo: - Tạ Minh Châu – Quản lý cơ sở dữ liệu với Microsoft Access – NXB ĐH Quốc Gia TP Hồ Chí Minh - Ngọc Anh Thư – Visual Basic 6.0 – Nhà xuất bản Trẻ - Lê Văn Nghinh – Nguyên lý thuỷ văn – NXB Nông Nghiệp - Sherry Kinkoph – Visual Access Abstract:. Meteorological and hydrological data have a lot of number and multiform. Some of disadvantage will be occured if data only save in pages. In order to get a convenient for user, database management system is designed for managing, upgrading and showing informations. This page present the software (CSDLQT) to manage meteorological and hydrological data which collected from hydrometeorological measuring satations in Quang Tri province. CSDLQT software will help user to get informations faster and easier.