Ban chỉ ĐẠo công nghệ thông tin của cơ quan đẢng giáo trình thiết kế, XÂy dựng và quản trị CƠ SỞ DỮ liệu hà NỘI, 2004



tải về 1.04 Mb.
trang20/29
Chuyển đổi dữ liệu07.07.2016
Kích1.04 Mb.
#87
1   ...   16   17   18   19   20   21   22   23   ...   29

4.Lưu nội dung bảng


Mọi thay đổi được tạo ra cho nội dung bảng (như các giá trị được chèn vào) không được lưu vật lý lên đĩa cho đến khi lệnh

COMMIT

được dùng, bạn đóng CSDL hoặc bạn thoát khỏi SQL. Do đó, nếu mất điện hoặc một ngắt khác nào đó đột ngột xuất hiện trước khi bạn thực hiện lệnh COMMIT với bảng, nội dung bảng cũ sẽ được giữ lại. Vì vậy, sẽ là hữu dụng nếu lưu cất hai bản ghi vừa được nhập vào bảng INVENTRY bằng lệnh

COMMIT INVENTRY;

Lệnh COMMIT thường dùng để lưu các kết quả bổ sung, thay đổi và xoá

được tạo ra cho nội dung bảng. Khi bạn đã lưu cấu trúc CSDL và bảng với COMMIT, bạn có thể thoát khỏi phần mềm.

C
Lưu ý người dùng dBASE IV 1.1: Vì SQL không được tích hợp vào phần mềm dBASE, bạn phải thoát khỏi SQL trước, sau đó thoat khỏi dBASE. Chẳng hạn, nếu bạn dùng SQL của dBASE IV, dùng lệnh

SET SQL OFF;

và sau đó chọn QUIT để thoát khỏi dBASE IV. Nếu bạn bắt đầu một phiên làm việc SQL mới của dBASE IV, dùng

SET SQL ON;

và trở lại CSDL ROBCOR được tạo ra trong phiên làm việc trước với lệnh

START DATABASE ROBCOR;



húng tôi không muốn để lại một ấn tượng là vai trò chính của lệnh COMMIT là để lưu các thay đổi. Trên thực tế, mục đích cơ bản của lệnh COMMIT và ROLLBACK (xem phần 3.3.7) là bảo đảm toàn vẹn cập nhật CSDL trong quản lý giao dịch. (Chúng ta sẽ khảo sát quản lý giao dịch trong chương 9).

5.Bổ sung dữ liệu cho bảng


Cho đến giờ, chỉ có hai hàng đầu tiên được lưu vào trong bảng INVENTRY. Tám hàng còn lại có thể được bổ sung bằng cùng một dãy lệnh

INSERT INTO INVENTRY


VALUES(..., ..., ..., ...)

mà chúng ta đã dùng để đưa vào hai hàng trên. Chẳng hạn, hàng thứ ba sẽ được bổ sung như sau

INSERT INTO INVENTRY
VALUES(‘2QQ23DRT’,’ PVC pipe, 3.5in, 8ft’, ‘07/02/91’, 188, 75, 5.87, 21344);

Cứ tiếp tục như vậy để đưa vào từng hàng còn lại, mỗi lần một hàng. (Đừng bận tâm về việc gây ra lỗi; bạn sẽ học cách sửa lỗi trong phần sau.) Hãy đảm bảo là lưu nội dung bảng bằng lệnh COMMIT khi tất cả các hàng đã được đưa vào. Khi bạn đã hoàn thành, lệnh

SELECT *
FROM INVENTRY

sẽ chỉ ra nội dung bảng kết quả:



P_CODE

P_DESCRIPT

STOCK_DATE

ON_HAND

MIN_QUANT

PRICE

V_CODE

13-Q2/P2
ZW-23116
2QQ23DRT
54778-2T
23114-AA
89-WRE-Q
2232/QWE
1546-QQ2
WWE/D324
2232/QTY

7.25in, power saw blade
2.5in, wood screw, 100
PVC pipe, 3.5in, 8ft
Rat-tail file, 1/8in fine
Sledge hammer, 12lb
Houselite chain saw, 16in
B&D jigsaw, 8in, blade
Hardware cloth,1/4in,50ft
Claw hammer
B&D jigsaw, 12in, blade

08/12/91
06/25/91
07/02/91
12/03/90
02/15/91
08/11/91
11/26/90
08/14/91
08/12/91
11/26/90

32
237
188
43
8
11
6
15
23
8

15
100
75
20
5
5
3
5
10
3

14.99
8.45
5.87
4.99
14.40
256.99
99.87
39.95
5.95
109.92

21344
21231
21344
21344
21231
24288
24288
23119
21225
24288

6.Sửa chữa


Dùng lệnh UPDATE để sửa các mục dữ liệu. Chẳng hạn, nếu bạn muốn thay đổi giá trị trường STOCK_DATE của hàng hai thành 05/26/91, dùng khóa chính (ZW-23116) để định vị đúng hàng thứ hai.

UPDATE INVENTRY


SET STOCK_DATE = ‘05/26/91’
WHERE P_CODE = ‘ZW-23116’;

Nếu nhiều hơn một thuộc tính cần được sửa trên một hàng, tách các phép sửa chữa bởi dấu phảy:

UPDATE INVENTRY
SET STOCK_DATE = ‘05/26/91’, PRICE = 8.54, MIN_QUANT = 75
WHERE P_CODE = ‘ZW-23116’;

Kiểm tra lại kết quả sửa chữa bằng cách liệt kê bảng với lệnh

SELECT *
FROM INVENTRY;

7.X
Lưu ý: Dùng ROLLBACK để phục hồi tình trạng cũ trước đó của bảng; Chúng ta sẽ dùng nội dung bảng ban đàu trong các phần còn lại của chương này.

oá hàng


Dễ dàng xoá một hàng. Chẳng hạn, nếu bạn muốn xoá hàng tám (giá trị khoá chính P_CODE = ‘1546-QQ2’ khỏi bảng INVENTRY, dùng lệnh

DELETE FROM INVENTRY


WHERE P_CODE = ‘1546-QQ2’;

Lưu ý rằng giá trị khóa chính cho phép SQL định vị chính xác bản ghi cần xoá. Thao tác xoá không phụ thuộc vào khóa chính: thuộc tính bất kỳ có thể được dùng. Chẳng hạn,

DELETE FROM INVENTRY
WHERE MIN_QUANT = 5;

sẽ xoá ba hàng.


8.Khôi phục nội dung bảng


Nếu bạn chưa dùng lệnh COMMIT để làm cho các thay đổi trong nội dung bảng cố định lại, bạn có thể khôi phục lại CSDL về trạng thái trước đó của nó với lệnh ROLLBACK. Lệnh ROLLBACK không yêu cầu bạn mô tả tên bảng; SQL xem như CSDL hiện thời trong bộ phải được phục hồi. Vì vậy, bạn chỉ cần gõ

ROLLBACK


và nhấn phím ENTER. Chúng ta sẽ khảo sát chi tiết hơn cách dùng cả hai lệnh COMMIT và ROLLBACK khi thảo luận về quản lý giao dịch trong chương 9.

IV.VẤN TIN


Mọi câu vấn tin đều dựa trên lệnh SELECT. Trên thực tế, để kiểm tra công việc của mình ở phần trước bạn đã dùng câu vấn tin dạng đơn giản nhất,

SELECT *
FROM INVENTRY;

để liệt kê tất cả các hàng gồm tất cả các cột trong bảng đã mô tả. Trong phần này bạn sẽ biết cách điều chỉnh phù hợp lệnh SELECT bằng cách bổ sung các hạn chế cho yêu cầu tìm kiếm. Với cách đó SELECT, kết hợp với các hạn chế tìm kiếm thích hợp, là một công cụ đầy năng lực sẽ cho phép bạn chuyển đổi dữ liệu thành thông tin.



tải về 1.04 Mb.

Chia sẻ với bạn bè của bạn:
1   ...   16   17   18   19   20   21   22   23   ...   29




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương