Tìm hiểu HSQL Để tạo một database ta cần phải xác định: - Mục đích của database đó.. Sau đó xác định các ràng buột cụ thể cho từng bảng và tạo các mối quan hệ cần thiết... Nếu bạn muốn
Trang 1Tìm hiểu HSQL
1.HSQL là gì?
tảng của SQL.
Một database gồm có các field, các record và các table Một relational database được xây dựng từ nhiều bảng có quan hệ với nhau.
Trang 2Tìm hiểu HSQL
Để tạo một database ta cần phải xác định:
- Mục đích của database đó.
- Phân phối thông tin cho mỗi bảng cho phù hợp hay xác định các field cho mỗi bảng Cần tránh sự
dư thừa và lập lại.
- Tạo bảng và add các record cần có vào bảng
Sau đó xác định các ràng buột cụ thể cho từng
bảng và tạo các mối quan hệ cần thiết.
Trang 3Tìm hiểu HSQL
2.Kết nối với CSDL:
- Unzip gói HSQL.zip (mặc định là C:\hsqldb)
- Mở folder C:\hsqldb và double-click vào biểu tượng run icon CSDL Comp200 sẽ hiện ra trên cửa sổ DOS Window.
Trang 4Tìm hiểu HSQL
Tiếp theo bạn cần install DBVisualizer rồi vào
Start, Programs, DbVisualizer-3.1.1,
DbVisualizer.
với màn hình chính.
chỉ ra Database Engine Driver and the
Connection.
Trang 5Tìm hiểu HSQL
3.Tìm hiểu và sử dụng HSQL
3.1 Tạo bảng:
CREATE TABLE
<TABLENAME>(<FIELD_NAME><TYPE><SIZE>);
+ <TABLENAME>: tên bảng mà bạn muốn tạo.
+ <FIELD_NAME>: tên trường mà bạn muốn có trong bảng + <TYPE>: Loại dữ liệu của trường như VARCHAR,
INTEGER, DATE Bạn có thể vào
C:/hsqldb/doc/hsqlSyntax.html#Datatypes hoặc
doc/hsqlSyntax.html#Datatypes nơi cài đặt HSQL để tham
khảo các type có trong HSQL.
+ <SIZE>: Kích cỡ của trường Đối với loại dữ liệu Integer thì
sẽ tự động gán.
Nếu bạn muốn khai báo khoá chính cho bảng thì dùng từ khoá PRIMARY KEY hoặc có thể dùng từ IDENTITY với kiểu dữ liệu là INTEGER.
Trang 6Tìm hiểu HSQL
3.1.1 Relationship:
Ta thấy giữa hai bảng CUSTOMERS và bảng MOVIES không có quan hệ trực tiếp với nhau mà nó thông qua bảng RENTALS Vấn đề đặt ra là tạo mối quan hệ giữa 2 bảng: CUSTOMERS và MOVIES
Bảng CUSTOMERS và RENTALS quan hệ với nhau thông qua customer_no, bảng RENTALS và MOVIES quan hệ với nhau thông qua movie_id.Vấn đề đặt ra là cần tạo mối quan hệ móc nối giữa CUSTOMERS và MOVIES thông qua RENTALS
Để tạo khoá móc nối đó ta dùng lệnh:
CREATE [UNIQUE] INDEX index ON table (column [, ]) ;
Trong ví dụ trên ta sẽ tạo rental_index trong bảng Rentals:
CREATE unique INDEX rental_index ON Rentals (customer_no, movie_id);
Trang 7Tìm hiểu HSQL
3.1.2 Query:
Sức mạnh của database là cho phép chúng ta được thấy những dât mà mình muốn thấy thông qua những câu
query.
a Nếu bạn muốn hiển thị một số records từ database thì dùng lệnh SELECT:
SELECT selectExpression FROM tableList
[ WHERE Expression ]
[ GROUP BY Expression [, ] ]
[ ORDER BY orderExpression [, ] ] ;
Trang 8Tìm hiểu HSQL
VD
- Nếu bạn muốn hiển thị tất cả các thông tin trong bảng CUSTOMER thì dùng lệnh: SELECT * from customers;
- Nếu bạn chỉ muốn hiển thi thông tin của khách hang có lastname là Smith thì: SELECT * from customers WHERE lastname='Smith';
- Nếu bạn chỉ muốn hiển thị thông tin cua khách hang có last name Smith và first name Robert
- Nếu bạn chỉ muốn hỉên thị lastname và firstname của khách hang thì:
SELECT firstname, lastname from customers;
Relating giữa các bảng dùng lệnh SELECT
- Liệt kê những khách hàng đã mượn phim
SELECT firstname, lastname from CUSTOMERS, RENTALS where
customers.customerid=rentals.customerid;
- Xác định bao nhiêu bộ phim đã được mượn
SELECT COUNT(title) from MOVIES where movies.movie_id=rentals.movie_id;
Trang 9Tìm hiểu HSQL
Sau khi hoàn thành câu lệnh SQL bạn click vào
Database->Execute để thực thi câu lệnh thì màn hình sau sẽ xuất hiện.
Trang 10Tìm hiểu HSQL
b Printing a Table
Vào file->print để in ra kết qủa các câu query của bạn.
c Exporting a table
Vào file->export để xuất ra kết quả các câu query của bạn.
Trang 11Tìm hiểu HSQL
3.2 Modifying Fields:
<columnname> Datatype [(columnSize) [DEFAULT
'defaultValue' [NOT NULL]] [BEFORE
<existingcolumn>];
<columnname>;
<newname>;
Trang 12Tìm hiểu HSQL
3.3 Xoá bảng khỏi Database:
3.4 Insert Records:
( VALUES(Expression) ;
3.5 Updating a Table:
[WHERE Expression];