Hàm xử lý giá trị kiểu NUMERIC
Hàm MAX() và Hàm MIN()
Cú pháp
– MAX(Number1, Number2, , NumberN)
– MIN(Number1, Number2, , NumberN)
Trả về giá trị lớn nhất (max), nhỏ nhất (min)
trong danh sách các tham số
Number1, ,NumberN có thể là
Hàm AVG()
Cú pháp
– AVG(Number1, Number2, , NumberN)
Trả về giá trị trung bình trong danh sách các
tham số
Number1, ,NumberN có thể là
– Hằng số
– Biến
29 trang |
Chia sẻ: thucuc2301 | Lượt xem: 903 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Giáo trình Tin quản lý Visual Foxpro - Bài 2: Các kỹ thuật cơ bản làm việc với bảng dữ liệu - Nguyễn Mạnh Hùng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
10
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 19
CÁC KHÁI NIỆM CƠ BẢN (10)
Từ khoá và câu lệnh
– Từ khoá (Keywords): những từ có sẵn của Visual
Foxpro.
VD: USE, BROWSE, DISPLAY, v.v
– Từ khoá > 4 ký tự chỉ cần dùng 4 ký tự đầu
VD: BROWSE BROW; DISPLAY DISP
– Câu lệnh: thực hiện một công việc nào đó
Tập hợp các từ khoá, tham số
có thể là 1 hay nhiều ký tự: !, ?, ??, @
BÀI 2
CÁC KỸ THUẬT CƠ BẢN LÀM VIỆC
VỚI BẢNG DỮ LIỆU
11
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 21
NỘI DUNG
KHÁI NIỆM BẢNG DỮ LIỆU
KHỞI TẠO BẢNG DỮ LIỆU
TUỲ BIẾN VỚI CẤU TRÚC CỦA BẢNG
CÁC THAO TÁC TRÊN DỮ LIỆU
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 22
KHÁI NIỆM
BẢNG DỮ LIỆU (TABLE) LÀ GÌ ?
– Field
– Record
– Data
12
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 23
KHỞI TẠO BẢNG DỮ LIỆU (1)
Xây dựng 1 bảng dữ liệu gồm 2 bước
– Khai báo cấu trúc của bảng
– Nhập dữ liệu vào bảng
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 24
KHỞI TẠO BẢNG DỮ LIỆU (2)
Cấu trúc của bảng (Structure)
– Fieldname: Tên trường
– Type: Kiểu dữ liệu chứa trong trường
– Width: Độ rộng của trường
– Decimal: Độ rộng dành cho phần giá trị số sau dấu
chấm thập phân
– Index
– Null
13
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 25
KHỞI TẠO BẢNG DỮ LIỆU (3)
25CharacterNganh
20CharacterKhoa
30CharacterDiachi
1LogicalGioitinh
8DateNgaysinh
25CharacterHoten
6CharacterMasv
DecimalWidthTypeFieldName
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 26
KHỞI TẠO BẢNG DỮ LIỆU (4)
Cú pháp:
– CREATE
VD: Crea DSCB
– Hoặc FILE – NEW - TABLE
14
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 27
KHỞI TẠO BẢNG DỮ LIỆU (5)
Thêm (Insert), Huỷ
(Delete) trường
Tên bảng tạo
Bấm OK để đồng ý
cấu trúc đã khai báo
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 28
KHỞI TẠO BẢNG DỮ LIỆU (6)
Bấm YES để chuyển sang
buớc nhập dữ liệu cho bảng
15
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 29
KHỞI TẠO BẢNG DỮ LIỆU (7)
Một số lưu ý khi khai báo cấu trúc của bảng
– Tên trường
không quá 10 ký tự
bắt đầu phải là ký tự chữ cái
không chứa dấu cách hay các ký tự đặc biệt
(!,@,#,$,%,&,*,v.v..)
không trùng nhau
không trùng tên với các từ khoá
– Trường kiểu Numeric có phần thập phân
Width = Decimal + 2
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 30
KHỞI TẠO BẢNG DỮ LIỆU (8)
Cú pháp câu lệnh SQL
– CREATETABLE(
FieldName1Type1(Width,[Decimal]),
FieldName2Type2(Width,[Decimal]),,
FieldNameNTypeN(Width,[Decimal]))
VD:
Crea tabl DSCB(Macb C(6), Hoten C(25), Ngaysinh D, Gioitinh L,
Diachi C(45), Ngayvaolam D, Honnhan L)
16
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 31
TÙY BIẾN VỚI CẤU TRÚC CỦA BẢNG
HIỂN THỊ CẤU TRÚC
SỬA ĐỔI CẤU TRÚC
SAO CHÉP CẤU TRÚC
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 32
LƯU Ý
Trước khi thực hiện bất kỳ công việc gì với
bảng, cần kiểm tra xem bảng đã ở trạng thái
sẵn sàng làm việc hay chưa??(Opened/Closed)
Để gọi bảng dữ liệu ra làm việc
– Cú pháp: USE
VD: Use DSSV
Thanh trạng thái
17
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 33
LƯU Ý
Đóng bảng dữ liệu đang mở
– Cú pháp: USE
Kết thúc làm việc với Visual Foxpro
– Cú pháp: QUIT
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 34
TÙY BIẾN VỚI CẤU TRÚC CỦA BẢNG
Hiển thị cấu trúc của bảng
DISPLAY | LIST STRUCTURE
Sửa đổi cấu trúc của bảng
MODIFY STRUCTURE
Sao chép cấu trúc
COPY STRUCTURE
18
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 35
HIỂN THỊ CẤU TRÚC
CÚ PHÁP
DISPLAYSTRUCTURE
LISTSTRUCTURE
VD: Xem cấu trúc của bảng DSSV
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 36
SỬA ĐỔI CẤU TRÚC
CÚ PHÁP
MODIFYSTRUCTURE
Chèn thêm, xóa bớt trường
Thay đổi tên, độ rộng của trường
Thay đổi kiểu dữ liệu
Thay đổi trật tự các trường trong tệp dữ liệu
19
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 37
SAO CHÉP CẤU TRÚC
CÚ PHÁP
COPYSTRUCTURETO
– VD:
Use DSSV
Copy Structure To DSSV_New
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 38
SAO CHÉP CẤU TRÚC (2)
SAO CHÉP CẤU TRÚC & NỘI DUNG TỆP DỮ LIỆU
C1: COPYTO
VD: Use DSSV
Copy To DSSV_New
C2: COPYFILETO
VD: Copy File A:\DSSV To E:\Student\DSSV_New
20
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 39
THAO TÁC TRÊN DỮ LIỆU
ĐỊNH VỊ CON TRỎ BẢN GHI
HIỂN THỊ, TRÌNH BÀY DỮ LIỆU
THÊM BẢN GHI MỚI
CẬP NHẬT DỮ LIỆU
HỦY BỎ, PHỤC HỒI DỮ LIỆU
LỌC DỮ LIỆU
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 40
ĐỊNH VỊ CON TRỎ BẢN GHI
Định vị tuyệt đối
– Cú pháp: GO | [TOP] | [BOTTOM]
VD1: Go 3
VD2: Go Bottom
Định vị tương đối
– Cú pháp: SKIP (+/-)
VD1: Skip -2
VD2: Skip +3
21
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 41
THAO TÁC TRÊN DỮ LIỆU
ĐỊNH VỊ CON TRỎ BẢN GHI
HIỂN THỊ, TRÌNH BÀY DỮ LIỆU
THÊM BẢN GHI MỚI
CẬP NHẬT DỮ LIỆU
HỦY BỎ, PHỤC HỒI DỮ LIỆU
LỌC DỮ LIỆU
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 42
HIỂN THỊ, TRÌNH BÀY DỮ LIỆU
Trình bày dữ liệu:
– DISPLAY
– LIST
– ?/??
– BROWSE
BROWSE [FIELDS ] [NOAPPEND] [NODELETE]
[NOEDIT] [TITLE ] [FOR ]
BROWSE FIELDS MaSV, Hoten, Ngaysinh NOAPPEND
NODELETE NOEDIT TITLE “Danh sach sinh vien”
FOR Lop=“QA19B1”
22
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 43
THAO TÁC TRÊN DỮ LIỆU
ĐỊNH VỊ CON TRỎ BẢN GHI
HIỂN THỊ, TRÌNH BÀY DỮ LIỆU
THÊM BẢN GHI MỚI
CẬP NHẬT DỮ LIỆU
HỦY BỎ, PHỤC HỒI DỮ LIỆU
LỌC DỮ LIỆU
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 44
THÊM BẢN GHI MỚI VÀO BẢNG DỮ LIỆU
Thêm bản ghi mới
– Cú pháp: APPEND hoặc Append Blank
VD:
Chèn thêm bản ghi mới
– Insert Blank [Before]
VD:
23
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 45
THAO TÁC TRÊN DỮ LIỆU
ĐỊNH VỊ CON TRỎ BẢN GHI
HIỂN THỊ, TRÌNH BÀY DỮ LIỆU
THÊM BẢN GHI MỚI
CẬP NHẬT DỮ LIỆU
HỦY BỎ, PHỤC HỒI DỮ LIỆU
LỌC DỮ LIỆU
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 46
CẬP NHẬTDỮ LIỆU
Cập nhật dữ liệu
– BROWSE
– APPEND
– EDIT
– CHANGE
– REPLACE
VD:
24
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 47
Câu lệnh REPLACE
Cú pháp
REPLACE [] WITH
[ , WITH ,,
WITH ]
[FOR ]
Trong đó
Phạm vi : vùng các bản ghi chịu tác động bởi câu lệnh
All : Tất cả các bản ghi
Record : Bản ghi thứ number
Rest : Toàn bộ các bản ghi còn lại từ bản ghi hiện thời
Next : Từ bản ghi hiện thời đến number bản ghi kế tiếp
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 48
Câu lệnh REPLACE (Cont)
, , : Các trường sẽ
được thay đổi (cập nhật) giá trị
, , : Giá
trị được đưa và các trường tương ứng kể trên
– Biểu thức: Hằng số, giá trị của hàm,
Kiu d liu ca cùng kiu d liu ca
For
– Các bản ghi thỏa mãn sẽ được
thực hiện
25
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 49
Hàm IIF()
Hàm IIF() thường được kết hợp với các câu lệnh khác. VD:
REPLACE
Cú pháp
IIF(Biểu thức điều kiện, Biểu thức 1, Biểu thức 2)
Hoạt động của hàm
– Nếu biểu thức điều kiện được thỏa mãn (BTĐK = .T.) thì hàm sẽ trả về cho
ta biểu thức 1, ngược lại (BTĐK = .F.) hàm sẽ trả về biểu thức 2
– Biểu thức: hằng số, giá trị của hàm khác, trường,
VD:
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 50
THAO TÁC TRÊN DỮ LIỆU
ĐỊNH VỊ CON TRỎ BẢN GHI
HIỂN THỊ, TRÌNH BÀY DỮ LIỆU
THÊM BẢN GHI MỚI
CẬP NHẬT DỮ LIỆU
HỦY BỎ, PHỤC HỒI DỮ LIỆU
LỌC DỮ LIỆU
26
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 51
HỦY BỎ DỮ LIỆU
Đánh dấu các bản ghi cần xóa
– C1: Bấm Ctrl – T (đánh dấu các bản ghi cần xóa tại
cửa sổ Browse)
– C2: Dùng câu lệnh DELETE
Cú pháp: DELETE [FOR ]
Xóa bỏ các bản ghi đã được đánh dấu
– PACK
Hủy bỏ toàn bộ các bản ghi trong bảng CSDL
– ZAP
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 52
PHỤC HỒI DỮ LIỆU
Lệnh RECALL
Cú pháp
– RECALL [For ]
27
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 53
THAO TÁC TRÊN DỮ LIỆU
ĐỊNH VỊ CON TRỎ BẢN GHI
HIỂN THỊ, TRÌNH BÀY DỮ LIỆU
THÊM BẢN GHI MỚI
CẬP NHẬT DỮ LIỆU
HỦY BỎ, PHỤC HỒI DỮ LIỆU
LỌC DỮ LIỆU
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 54
LỌC DỮ LIỆU
Lệnh SET FILTER
Cú pháp
– Đ t l
c d liu
SET FILTER TO
– Hy b đ t l
c d liu
SET FILTER TO
28
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 55
GIỚI THIỆU MỘT SỐ HÀM ĐƠN GIẢN
Hàm xử lý giá trị kiểu Date
Hàm xử lý giá trị kiểu Character
Hàm Logical
Hàm xử lý giá trị kiểu Numeric
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 56
Hàm xử lý giá trị kiểu Date
Hàm DATE()
– Trả lại giá trị ngày/tháng/năm hiện tại của hệ
thống
– VD:
? DATE() 03/28/2008
Hàm YEAR()
– Trả lại năm của giá trị kiểu Date
– VD:
_ngay = { ^2008/03/28 }
? YEAR(_ngay) 2008
29
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 57
Hàm xử lý giá trị kiểu Date
Hàm MONTH()
– Trả lại tháng của giá trị kiểu Date
Hàm DAY()
– Trả lại ngày của giá trị kiểu Date
– VD:
_ngay = {^2007/02/23}
? Month(_ngay) 2
? Day(_ngay) 23
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 58
Hàm xử lý giá trị kiểu Date
Hàm CMONTH()
– Trả lại tên tháng của giá trị kiểu Date
VD
– ? CMONTH(DATE()) ”March”
30
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 59
Hàm xử lý giá trị kiểu Date
Hàm DTOC()
– Chuyển giá trị kiểu Date sang kiểu Charater
– VD:
? DTOC(DATE()) “28/03/2008”
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 60
GIỚI THIỆU MỘT SỐ HÀM ĐƠN GIẢN
Hàm xử lý giá trị kiểu Date
Hàm xử lý giá trị kiểu Character
Hàm Logical
Hàm xử lý giá trị kiểu Numeric
31
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 61
Hàm xử lý giá trị kiểu CHARACTER
Hàm LEFT()
– Cú pháp: LEFT(“Chui ký t”,S ký t ly)
– Lấy ra S ký t từ bên trái của Chui ký t
– VD:
? LEFT(“Thăng Long”,5) Thăng
Hàm RIGHT()
– Cú pháp: RIGHT(“Chui ký t”,S ký t ly)
– Lấy ra S ký t từ bên phải của Chui ký t
– VD:
? RIGHT(“Thăng Long”,4) Long
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 62
Hàm xử lý giá trị kiểu CHARACTER
Hàm SUBSTR()
– Cú pháp: SUBSTR(“Chuỗi ký tự”, Số 1, Số 2)
– Trích từ Chui ký t một chuỗi con có S 2
ký tự và bắt đầu từ ký tự S 1
– VD:
? SUBSTR(“Thăng Long”,2,4) “hăng”
32
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 63
Hàm xử lý giá trị kiểu CHARACTER
Hàm STR(Giá trị kiểu số)
– Chuyển giá trị kiểu số thành giá trị kiểu ký tự
– VD:
? STR(2008) “2008”
Hàm VAL(Giá trị kiểu ký tự)
– Chuyển giá trị kiểu ký tự thành giá trị kiểu số
– VD:
? VAL(“2008”) 2008
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 64
Hàm xử lý giá trị kiểu CHARACTER
Hàm ALLTRIM()
– Cú pháp: ALLTRIM(“Chuỗi ký tự”)
– Cắt bỏ những khoảng trống (dấu cách) tồn tại ở hai
đầu của Chuỗi ký tự
– VD:
? ALLTRIM(“ Thăng Long “) “Thăng Long”
33
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 65
Hàm xử lý giá trị kiểu CHARACTER
Hàm UPPER() và Hàm LOWER()
Cú pháp:
– UPPER(“Chui ký t”)
– LOWER(“Chui ký t”)
Chuyển chuỗi ký tự từ dạng ký tự thường
sang ký tự hoa (Upper) hay ngược lại
(lower)
VD:
– ? UPPER(“thăng long”) ”THĂNG LONG”
– ? LOWER(“THĂNG LONG”) ”thăng long”
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 66
Hàm xử lý giá trị kiểu CHARACTER
Hàm CTOD()
Cú pháp:
– CTOD(“Chui ký t dng DATE”)
Chuyển chuỗi ký tự dạng ngày/tháng/năm
từ kiểu ký tự sang kiểu DATE
VD:
– _ngay = “28/03/2008”
– ? CTOD(_ngay) 28/03/2008
34
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 67
GIỚI THIỆU MỘT SỐ HÀM ĐƠN GIẢN
Hàm xử lý giá trị kiểu Date
Hàm xử lý giá trị kiểu Character
Hàm Logical
Hàm xử lý giá trị kiểu Numeric
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 68
Hàm trả về giá trị Logical
Kết quả của hàm là các giá trị .T. hoặc .F.
Hàm FOUND()
Thưng dùng đ kim tra kt qu ca câu lnh tìm
kim LOCATE
– .T. : Câu lệnh LOCATE tìm thấy bản ghi thỏa
mãn điều kiện
– .F. : Câu lệnh LOCATE không tìm thấy bản ghi
thỏa mãn điều kiện
35
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 69
Hàm trả về giá trị Logical
Hàm EOF()
– .F. : Con trỏ bản ghi vẫn chưa vượt qua bản
ghi cuối cùng của tệp
– .T. : Con trỏ bản ghi vượt qua bản ghi cuối
cùng của tệp
Hàm BOF()
– .F. : Con trỏ bản ghi vẫn chưa vượt qua bản
ghi đầu tiên của tệp
– .T. : Con trỏ bản ghi vượt qua bản ghi đầu
tiên của tệp
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 70
GIỚI THIỆU MỘT SỐ HÀM ĐƠN GIẢN
Hàm xử lý giá trị kiểu Date
Hàm xử lý giá trị kiểu Character
Hàm Logical
Hàm xử lý giá trị kiểu Numeric
36
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 71
Hàm xử lý giá trị kiểu NUMERIC
Hàm INT()
– Cú pháp: INT(Number)
– Trả về giá trị phần nguyên của Number
– VD:
? INT(3.12345) 3
Hàm SQRT()
– Cú pháp: SQRT(Number)
– Trả về giá trị căn bậc 2 của Number
– VD:
? SQRT(9) 3
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 72
Hàm xử lý giá trị kiểu NUMERIC
Hàm ROUND()
– Cú pháp: ROUND(Number1, Number2)
– Trả về giá trị Number1 đã đưc làm tròn đn
Number2 số sau dấu chấm thập phân
– VD:
? ROUND(3.12345, 2) 3.12
37
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 73
Hàm xử lý giá trị kiểu NUMERIC
Hàm MOD()
Cú pháp
– MOD(Number1, Number2,)
Trả về phần dư của phép chia Number1 cho
Number2
VD
– ? MOD(8,3) 2
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 74
Hàm xử lý giá trị kiểu NUMERIC
Hàm MAX() và Hàm MIN()
Cú pháp
– MAX(Number1, Number2,, NumberN)
– MIN(Number1, Number2,, NumberN)
Trả về giá trị lớn nhất (max), nhỏ nhất (min)
trong danh sách các tham số
Number1,,NumberN có thể là
– Hằng số
– Biến
38
Wednesday, May 27, 2009 Tin quản lý - Visual Foxpro 75
Hàm xử lý giá trị kiểu NUMERIC
Hàm AVG()
Cú pháp
– AVG(Number1, Number2,, NumberN)
Trả về giá trị trung bình trong danh sách các
tham số
Number1,,NumberN có thể là
– Hằng số
– Biến
Các file đính kèm theo tài liệu này:
- viso_foxro_bai2_9945_7967_2021053.pdf