Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 68 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
68
Dung lượng
0,95 MB
Nội dung
HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU Microsoft Visual FoxPro TS ĐỖ QUANG VINH Email: dqvinh@live.com Hà Nội - 2008 I - TỔNG QUAN VỀ Microsoft Visual FoxPro MỞ ĐẦU - VFP 9.0 SP2 phát hành vào năm 2007 YÊU CẦU HỆ THỐNG Máy tính PC Pentium Bộ nhớ 64 MB RAM (128 MB or cao hơn) Dung lượng đĩa cứng dành cho VFP 9.0 165 MB Màn hình có độ phân giải 800 x 600, 256 màu High color 16-bit Ổ đĩa CD-ROM/DVD Chuột Hệ điều hành WINDOWS XP Windows Server 2003 Tốt cài đầy đủ VFP9.0 SP2 từ đĩa CD ĐỖ QUANG VINH - HUC KHỞI ĐỘNG Microsoft Visual FoxPro Cách 1: Start\Program\Microsoft Visual FoxPro Cách 2: Start\Run Cách 3: nháy vào biểu tượng Microsoft Visual FoxPro hình Desktop CÁC CHẾ ĐỘ LÀM VIỆC: a Chế độ tương tác b Chế độ chương trình THOÁT KHỎI Visual FoxPro: lệnh QUIT GIAO DIỆN HỆ THỐNG BẢNG CHỌN a Bảng chọn menu b Mục chọn c Menu PopUp d Menu Option ĐỖ QUANG VINH - HUC CỬA SỔ LỆNH COMMAND TRỢ GIÚP HELP CÁC KHÁI NIỆM CƠ BẢN LỆNH Visual FoxPro - Lệnh VFP thị cho VFP thực thao tác quản trị liệu cụ thể - Cú pháp tổng quát lệnh VFP: [] [ ALIAS - Bí danh đặt theo quy tắc tên biến: bắt đầu ký tự sau số ký tự, không chứa dấu cách dài ≤ 254 kí tự - Các bảng mở đồng thời phải có bí danh khác - Nếu không gán bí danh cho bảng liệu mở VFP tự đặt tên bí danh theo quy tắc: ĐỖ QUANG VINH - HUC 54 + Lấy tên bảng làm tên bí danh Nếu tên bảng thoả mãn tên biến không bị trùng bí danh + Bí danh mặc định A ÷ J cho 10 vùng làm việc đầu tiên, vùng lại W11 ÷ W32767 CHỌN VÙNG LÀM VIỆC DỰA VÀO BÍ DANH - Khi mở bảng liệu vùng làm việc dùng lệnh SELECT < bí danh> để thay cho lệnh SELECT < số hiệu vùng> THAM KHẢO TRÊN CÁC VÙNG LÀM VIỆC KHÁC - Tại vùng thời mở bảng liệu vùng khác lệnh: USE < Tên bảng> IN < Số hiệu vùng> - Tại vùng mở bảng, bảng mở nhiều vùng khác từ khoá AGAIN: USE AGAIN [ALIAS ] ĐỖ QUANG VINH - HUC 55 VÙNG LÀM VIỆC VÀ CON TRỎ BẢN GHI - VFP quản lý riêng biệt bảng liệu tệp liên quan mở chúng tệp CDX, IDX, FMT, FPT - Đặc biệt có 32767 trỏ ghi để quản lý 32767 vùng làm việc Vì vậy, việc dịch chuyển trỏ ghi vùng không làm ảnh hưởng đến trỏ ghi vùng khác, việc chuyển vùng làm việc từ vùng sang vùng không ảnh hưởng tới trỏ ghi vùng đó, kể bảng liệu mở nhều vùng khác Vì vậy, không thiết lập mối quan hệ bảng liệu trỏ ghi vùng khác hoàn toàn độc lập ĐỖ QUANG VINH - HUC 56 CHUYỂN ĐỔI VÙNG LÀM VIỆC HIỆN THỜI - Để làm việc với nhiều bảng đồng thời, phải tham chiếu liệu bảng khác nhau, phải thường xuyên thay đổi vùng làm việc thời - Lệnh SELECT công dụng xác định vùng làm việc bảng liệu cho phép di chuyển từ vùng sang vùng khác - Một số dạng lệnh SELECT: + SELECT + SELECT + SELECT + SELECT ĐỖ QUANG VINH - HUC 57 QUAN HỆ GIỮA CÁC BẢNG DỮ LIỆU TRONG CÁC VÙNG KHÁC NHAU - Các bảng mở vùng làm việc khác có quan hệ với thiết lập mối quan hệ chúng lệnh SET RELATION, JOIN, UPDATE - Lệnh SET RELATION trì mối quan hệ chiều từ bảng chủ tới bảng khách Muốn có mối quan hệ đảo ngược phải thiết lập lại mối quan hệ - Các lệnh JOIN, UPDATE trì mối quan hệ tạm thời bảng lệnh thi hành Khi thi hành xong bảng lại trở trạng thái độc lập ĐỖ QUANG VINH - HUC 58 THIẾT LẬP MỐI QUAN HỆ BẰNG LỆNH SET RELATION LỆNH SET RELATION - Nhiều trường hợp xử lý liệu đòi hỏi phải tham khảo liệu có liên quan với bảng khác nhau, phải thiết lập mối quan hệ chúng lệnh SET RELATION Khi đó, có chế tự động lật ghi bảng liệu khách tương ứng với dịch chuyển ghi bảng thời (bảng chủ) Cơ chế hoạt động theo mối "quan hệ" xác định từ trước bảng chủ bảng khách - Cú pháp: SET RELATION [ INTO | ] [,< trường khóa 2> INTO ] [IN | ] [ADDITIVE] ĐỖ QUANG VINH - HUC 59 - Ví dụ: Để quản lý bạn đọc thư viện CLOSE ALL SELECT USE KHOSACH ALIA KS INDEX ON SDK TO CMSDK SELECT USE BANDOC SET RELATION TO SDK INTO KS BROWSE FIELDS SDK, HOTEN, KS.TENSACH, NGAYMUON, SONGAYQH=DATE()-NGAYMUON-15 CHÚ Ý KHI DÙNG LỆNH SET RELATION - Nếu hai bảng thay đổi cấu trúc, đặc biệt trường quan hệ quan hệ trì, gây kết sai ĐỖ QUANG VINH - HUC 60 - Không dùng lệnh COPY TO, SORT ON, JOIN để tạo bảng kết mà bảng bảng khách - Không nên dùng lệnh SUM, AVERAGE theo biểu thức bảng khách - Thường thiết lập quan hệ từ bảng có nhiều ghi trùng khoá đến bảng khoá có ghi - Lập SET RELATION cho phép thiết lập mối quan hệ bắc cầu, bảng vừa khách quan hệ này, vừa chủ quan hệ khác - Song, không đặt quan hệ vòng Ví dụ: A → B → C → A ĐỖ QUANG VINH - HUC 61 HUỶ BỎ MỐI QUAN HỆ - Mở quan hệ từ vùng thời đến vùng khác cắt đứt quan hệ vùng thời có với vùng khác - Đứng vùng làm việc bảng chủ lệnh SET RELATION TO tham số - Đóng bảng KẾT NỐI CÁC BẢNG DỮ LIỆU BẰNG LỆNH JOIN - Dùng để tạo bảng thứ ba từ hai bảng mở dựa tiêu chuẩn định trước Chọn bảng mở để kết nối vùng thời, bảng vùng khác - Cú pháp: JOIN WITH TO [FIELDS ] [FOR ] + Bảng thứ vùng thời, bảng thứ hai nhận diện bí danh sau WITH ĐỖ QUANG VINH - HUC 62 - Ví dụ: quản lý sách thư viện có bảng BANDOC bảng KHOSACH Tạo bảng thứ SACHMUON gồm trường SDK, TENSACH, SOTHE HOTEN CLOSE ALL SELECT USE KHOSACH ALIAS KS SELECT USE BANDOC JOIN WITH KS TO SACHMUON FIELDS SOTHE, HOTEN, SDK, KS.TENSACH FOR SDK=KS.SDK SELECT USE SACHMUON BROWSE ĐỖ QUANG VINH - HUC 63 CẬP NHẬT BẢNG CHÍNH TỪ CÁC BẢNG LIÊN QUAN UPDATE - Một ứng dụng việc mở nhiều bảng lấy liệu từ bảng cập nhật sang bảng khác Bảng cập nhật phải mở vùng hành, bảng chứa liệu để lấy phải mở vùng khác với Để VFP biết cần lấy liệu từ ghi bảng có liệu, chép sang ghi hành bảng cần nhập, cần phải xác định giá trị so khớp Trường tính giá trị gọi phải có mặt hai bảng - Cú pháp: UPDATE ON FROM REPLACE WITH [ WITH , ] [RANDOM] ĐỖ QUANG VINH - HUC 64 Có cách dùng UPDATE: a Dùng UPDATE RANDOM - Đòi hỏi hai bảng hành bảng cần phải xếp vật lý mục tăng dần theo - Nếu không thoả mãn điều kiện, UPDATE RANDOM làm việc cho kết sai b Dùng UPDATE có RANDOM - Không đòi hỏi bảng phải có thứ tự, bảng hành phải mục tăng theo - Nếu bảng hành không mục VFP thông báo lỗi Database is not ordered (dữ liệu không đưọc xếp), mục không cho kết sai ĐỖ QUANG VINH - HUC 65 - Ví dụ: việc quản lý xuất phẩm, giả sử biết tình trạng tồn kho đầu tháng, tháng nhập, xuất số hàng Mỗi lần nhập, xuất ghi nhận lại biên lai tương ứng Căn vào biên lai này, tính lại tình trạng tồn kho cho đầu tháng Giả sử tình trạng tồn kho cất bảng KDXBP gồm hai trường: MAXBP ghi mã xuất phẩm SOLUONG ghi số lượng xuất phẩm Các biên lai nhập cất bảng NHAPXBP Các biên lai xuất cất bảng XUATXBP ĐỖ QUANG VINH - HUC 66 CLOSE ALL SELECT USE NHAPXBP ALIAS NH SELECT USE XUATXBP ALIAS XU SELECT USE KDXBP INDEX ON MAXBP TO CMXBP BROWSE UPDATE ON MAXBP FROM NH REPLACE SOLUONG WITH SOLUONG + NH.SOLUONG RANDOM BROWSE UPDATE ON MAXBP FROM XU REPLACE SOLUONG WITH SOLUONG - XU.SOLUONG RANDOM BROWSE ĐỖ QUANG VINH - HUC 67 KẾT THÚC ! TRÂN TRỌNG CÁM ƠN ! ĐỖ QUANG VINH - HUC 68 ...I - TỔNG QUAN VỀ Microsoft Visual FoxPro MỞ ĐẦU - VFP 9.0 SP2 phát hành vào năm 20 07 YÊU CẦU HỆ THỐNG Máy tính PC Pentium Bộ nhớ 64 MB RAM ( 128 MB or cao hơn) Dung lượng... hình có độ phân giải 800 x 600, 25 6 màu High color 16-bit Ổ đĩa CD-ROM/DVD Chuột Hệ điều hành WINDOWS XP Windows Server 20 03 Tốt cài đầy đủ VFP9.0 SP2 từ đĩa CD ĐỖ QUANG VINH - HUC ... thức 2> ) cho giá trị lớn hai biểu thức MIN(, ) cho giá trị nhỏ hai biểu thức MOD(, ) cho số dư phép toán chia cho VAL(s)