Tạo mới Table Tại cửa sổ EnterPrise Manager chọn CSDL cần tạo Table Chọn mục Table / Click phải chọn New Table This is trial version www.adultpdf.com... Biên soạn: Dương Thành Phết Tran
Trang 1Biên soạn: Dương Thành Phết Trang 21
3.2.4 Nhóm kiểu số thực(Thập phân): Gồm 2 nhóm kiểu dữ liệu :
Kiểu dữ liệu gần ñúng (Real , Float): Phải cần ñặc tả ñộ chính xác số chữ số tối ña ñược cho
ở 2 phía của dấu thập phân
Real(n) Có ñộ chính xác tối ña 7 chữ số,(Mặc ñịnh 7)
Float(n) Có ñộ chính xác 1–38 chữ số (Mặc ñịnh 15)
Ví du: a Real Lưu ñược giá trị 42516,25 hoặc 425,1625
b Float(8) Lưu ñược giá trị 42513,625 hoặc 4,2513625
Lưu ý thông thường tránh dùng : Float, Real
Kiểu dữ liệu chính xác (Decimal, Numeric): Phải ñặc tả ñộ chính xác số chữ số tối ña ñược
cho ở bên phải dấu thập phân Khi khai báo phải chỉ ñịnh cả 2 ñộ chính xác và tỷ lệ Nếu
không mặc ñịnh sẽ là (18,0)
Decimal(n1,n2)
Numeric(n1,n2)
Ví du: A Decimal(7,2) Lưu ñược : 4251665,34 không lưu ñược 46525123,25
B Numeric(5,4) Lưu ñược : 425,3124 không lưu ñược 54265,785269
C Numeric Số nguyên tối ña 18 chữ số
3.2.5 Nhóm kiểu liệu ngày giờ DateTime : Lưu dữ liệu Ngày/ Giờ, Dữ liệu ngày giờ có thể
có nhiều ñịnh dạng khác nhau
Kiểu dữ liệu Lưu trữ Phạm vi
DateTime 8 1/1/1753 - 12/31/9999 SmallDateTime 4 1/1/1900 - 06/06/2079
3.2.6 Nhóm kiểu dữ liệu tiền tệ Money & SmallMoney: Lưu trữ dữ liệu tiền tệ Có Scale là
4 (Chứa 4 số bên phải dấu chấm thập phân)
ðộ chính xác Kích thước
This is trial version www.adultpdf.com
Trang 2Biên soạn: Dương Thành Phết Trang 22
Kiểu dữ liệu Lưu trữ Phạm vi
3.2.7 Kiểu dữ liệu ñặc biệt
Kiểu Bit: Là kiểu dữ liệu Logic ñể lưu trữ thông tin Bolean biểu thị 1 trong 2 trang
thái: Yes-No, True-Faulse, giá trị lưu trữ là 0 - 1 Chiếm 1 Byte không gian bộ nhớ
Ví du: Gioitinh Bit
Kiểu Text & Image: Lưu trữ dữ liệu Text (> 8000 ký tự) Có thể lưu trữ 2Gb dữ liệu
nhị phân hoặc văn bản Tổ chức lưu trữ trên từng trang 8KB, nếu dữ liệu vượt quá sẽ chỉ ñến trang bổ sung Kiểu dữ liệu này gây cản trở trong vấn ñề khai thác dữ liệu
ðể khác phục nên lưu trữ dữ liệu Text và Imag thành các tập tin riêng và lưu ñường
dẫn của các tập tin này(Kiểu Varchar) trong CSDL
3.3 GIÁ TRỊ NULL, GIÁ TRỊ SỐ TỰ ðỘNG VÀ CỘT TÍNH TOÁN
3.3.1 Trị NULL
Tính chất cho phép Null của một cột có nghĩa là không bắt buột phải nhập dữ liệu
Nếu muốn cho phép một cột có thể rỗng chỉ cần ñặc tả Null
Nếu muốn không cho phép một cột có chứa giá trị rỗng thì phải xác ñịnh Not Null
Nếu không xác ñịnh Null hay Not Null thì thiết lập mặc ñịnh là Not Null
3.3.2 Trị tự ñộng
Là cột dữ liệu lưu trữ là giá trị số nguyên tự ñộng không phải nhập, ñược chỉ ñịnh thi
thiết kế table thông qua thuộc tính Identity
3.3.3 Cột tính toán
Là cột dữ liệu lưu trữ ñược thiết lập biểu thức tính tóan, giá trị tự ñộng không phải nhập
Ví du: Thành tiền = Số lượng * ðơn giá
Thanhtien As Soluong*Dongia
Phải ñảm bảo nguyên tắc:Các cột tham chiếu trong biểu thức tính toán trong 1 Table
3.4 THIẾT KẾ TABLE VÀ CÁC THAO TÁC XỬ LÝ
3.4.1 Tạo mới Table
Tại cửa sổ EnterPrise Manager chọn CSDL cần tạo Table Chọn mục Table / Click phải chọn New Table
This is trial version www.adultpdf.com
Trang 3Biên soạn: Dương Thành Phết Trang 23
Column Name : Tên cột của Table (tên Field)
Data Type : Chọn kiểu dữ liệu
Length : Xác ựịnh chiều dài tối ựa của dữ liệu
Allow Nulls : đánh dấu ựối với cột cho phép giá trị Null
Khai báo các thuộc tắnh cần thiết trong khung Column
o Description: Mô tả, ghi chú
o Default Value: Giá trị mặc ựịnh khi không nhập liệu
o Formula: Biểu thức tắnh toán giá trị của cột
o Precision: Số chữ số trước và sau dấu thập phân
o Scale: Số chử số sau dấu thập phân
o Identity: Giá trị số nguyên tự ựộng
Lần lượt thực hiện cho tất cả các cột
Thiết lập khó chắnh: Chọn Field cần chỉ ựịnh làm khóa (Giữ shift ựể chọn nhiều Fields): Click biểu tượng chìa khóa
đóng cửa sổ thiết kế và ựặt tên Table
3.4.2 Xem cấu trúc Table: Tại cửa sổ EnterPrise Manager :Double Click Tên Table
This is trial version www.adultpdf.com
Trang 4Biên soạn: Dương Thành Phết Trang 24
3.4.3 ðổi tên Table: Tại cửa sổ EnterPrise Manager
Click phải vào tên Table
Chọn Rename
Gõ tên mới Enter
3.4.4 Xóa Table : Tại cửa sổ EnterPrise Manager
Click phải vào tên Table Chọn Delete Chọn Yes
3.4.5 ðiều chỉnh cấu trúc 1 Table ñã thiết kế: Tại cửa sổ EnterPrise Manager
Click phải vào tên Table Chọn Design Table
ðiều chỉnh xong ñóng cửa sổ thiết kế Chon Yes ñể lưu lại
3.4.6 Mở 1 Table ñể xem và nhập liệu
Click phải vào tên Table
Chọn Open Table/ Return All Rows
3.5 THIẾT LẬP MỐI QUAN HỆ (RELATION SHIP)-XÂY DỰNG DIAGRAM
Khi xây dựng CSDL bằng công cụ Enterprise Manager chưa thiết lập quan hệ
3.5.1 Tạo mới lược ñồ quan hệ
Tại cửa sổ EnterPrise Manager
Chọn CSDL cần thiết lập quan hệ
Click phải mục Diagram New Diagram
This is trial version www.adultpdf.com
Trang 5Biên soạn: Dương Thành Phết Trang 25
Chọn Next
Chọn các Table cần thiết lập Diagram (Giữa Ctrl ñể chọn nhiều)
o Add: ðể chọn
o Remove: ðể hủy chọn
o Add Related Tables Automatically : Thiết lập quan hệ tự ñộng
Chỉ ñịnh xong Chọn Next
Chọn Finish
Tại cửa sổ thiết kế Relation Ship
Kéo thả Field quan hệ từ Table chính sang ñúng Field quan hệ bên Table quan hệ
Chỉ ñịnh các thành phần
This is trial version www.adultpdf.com
Trang 6Biên soạn: Dương Thành Phết Trang 26
Check Existing data on Creation : Kiểm tra phụ thuộc tồn tại dữ liệu trong quan hệ
Enforce Relation Ship for Replication: Cho phép thiết lập mối quan hệ
Enforrce Relationship for Insert and Update
o Cascade Updaterelated Fields : Tự ựộng cập nhật dữ liệu trong bảng QH khi bảng chắnh thay ựổi
o Cascade Delete Related Records: Tự ựộng xóa dữ liệu liên quan trong bảng QH khi dữ liệu bảng chắnh bị xóa
Chỉ ựịnh xong chọn OK (Lặp lại cho các quan hệ khác)
đóng cửa sổ thiết lập quan hệ Chọn Yes ựể lưu và ựặt tên
3.5.2 điều chỉnh lược ựồ quan hệ
Tại cửa sổ EnterPrise chọn mục Diagram
Bên cửa sổ phải: Click phải tên Diagram chọn Open
Tại cửa sổ thiết kế Relation Shipt
Xóa mối quan hệ : Chon mối quan hệ Delete
điều chỉnh mối quan hệ : Click phải mối quan hệ chọn Properties
3.5.3 Các chức năng trên thanh công cụ
Lưu lược ựồ quan hệ Thêm Table vào lược ựồ quan hệ
Mở cửa sổ thuộc tắnh 1 Table
một mối quan hệ ựang chọn
Thay ựổ kắch thước cửa sổ Zoom
Lưu lược ựộ dạng File Script Chỉ ựịnh thuộc tắnh khóa
Cắt 1 ựối tượng (Cut) Tạo chú thắch cho lược ựồ
This is trial version www.adultpdf.com
Trang 7Biên soạn: Dương Thành Phết Trang 27
Sao chép một ñối tượng (Copy) Tư ñộng sắp xếp các Table trong lược ñồ
Dán ñối tượng (Past) Công cụ quản lý khóa
Tạo mới Table (New Table) Công cụ quản lý các ràng buột
3.5.4 Xóa 1 lược ñồ quan hệ
Tại cửa sổ EnterPrise Chọn lược ñồ quan hệ / Nhấn Delete
3.6 TẠO TABLE DÙNG CÂU LỆNH SQL TỪ CỬA SỔ QUERY ANALYZER
3.6.1 Tạo mới Table
Tại cửa sổ Query Analyzer chọn CSDL làm việc:
Use <Tên DataBase>
Ví du: Use QuanLyBH
Thực hiện các lệnh tạo Table
Cú pháp:
Primary : Từ khóa ñể cột chỉ ñịnh là khóa chính
Null : Cho phép cột chỉ ñịnh chứa giá trị Null(Rỗng)
Not Null : Không cho cột chỉ ñịnh chứa giá trị Null
Các ràng buộc:
Create Table <Tên Table>
( <Tên cột> <Kiểu DL> Primary key , <Tên cột> <Kiểu DL> Null/Not Null Các ràng buột nếu có,
<Tên cột> <Kiểu DL> References <Tên Table QH>(Tên cột QH)
)
This is trial version www.adultpdf.com
Trang 8Biên soạn: Dương Thành Phết Trang 28
Default <Giá trị mặc ñịnh>: Gắn giá trị mặc ñịnh cho cột chỉ ñịnh
Check (<Biểu thức ràng buộc giá trị>): Kiểm tra ràng buột miền giá trị khi nhập liệu Reference : Dùng ñể xác ñịnh khóa ngoại, Mặc nhiên các mối quan hệ sẽ tự ñộng liên
kết với nhau (Không cần thiết lập mối QH)
Ghi chú: ðể thực hiện nhiều khối lệnh cùng lúc : ðặt chữ Go giữa các khối lệnh
Create Table LoaiSP
( MaLoai Primary key , TenLoai nvarchar(30) Not Null )
Go
Create Table SanPham
( MaSP Char(10) Primary key, TenSP nVarChar(30) ,
QuyCach nVarChar(100) NOT NULL, DVT nVarChar(10) NOT NULL , SLTon Decimal(9,2) Default 0 , DonGia Decimal(9,2) Check(DonGia>0) , MaLoai Tinyint References LoaiSP(MaLoai) )
Go
Create Table KhachHang
( MaKH Char(10) Primary key, TenKH nVarChar(30) Not Null , DiaChiKH nVarChar(100) , DienThoaiKH VarChar(20) , EmailKH VarChar(30) )
Go
Create Table NhanVien
( MaNV TinyInt Primary key, HoNV nVarChar(30) Not Null , TenNV nVarChar(20) Not Null , Phai Bit Default 0 ,
NgaySinh SmallDateTime, DiaChiNV nVarChar(100) , DienThoaiKH VarChar(20) )
Go
Create Table DonDatHang
( SoDH Char(10) Primary key, MaKH Char(10) References KhachHang(MaKH),
This is trial version www.adultpdf.com
Trang 9Biên soạn: Dương Thành Phết Trang 29
MaNV Tinyint References NhanVien(MaNV) , NgayDat SmallDateTime Not Null,
NgayGiao SmallDateTime Not Null, )
Go
Create Table ChiTietDH
( SoDH Char(10) References DonDatHang(SoDH), MaSp Char(10) References SanPham(MaSP), SLDat TinyInt Not Null,
Primary Key (SoDH,MaSP) )
Trong trường hợp khoá chính của một Table nhiều hơn một cột thì
Ghi chú: Thực thi lệnh tạo Table thành công : The command(s) completed successfully
3.6.2 Xóa Table
Tại cửa sổ Query Analyzer chọn CSDL làm việc:
Thực hiện các câu lệnh xóa Table
Cú pháp:
Drop <Tên Table>
Ví du: Drop LoaiSP
3.6.3 Xem lược ñồ quan hệ:
Tại cửa sổ EnterPrise Manager chọn CSDL ñã tạo bằng ngôn ngữ lệnh Tạo mới 1 Diagram Next Chọn các table Finish
3.7 CẬP NHẬT (THÊM, XÓA, SỬA) DỮ LIỆU VÀO CÁC TABLE
3.7.1 Sử dụng cộng cụ EnterPrise Manager
Click phải vào tên Table Chọn Open Table/ Return All Rows
Create Table <Tên Table>
(
<Tên cột1> <Kiểu DL> References <Tên Table QH1>(Tên cột QH), <Tên cột2> <Kiểu DL> References <Tên Table QH2>(Tên cột QH),
<Tên cột n> <Kiểu DL> Null/Not Null Các ràng buột nếu có,
Primary Key (Tên cột1, Tên cột2, ) )
This is trial version www.adultpdf.com
Trang 10Biên soạn: Dương Thành Phết Ờ http://www.thayphet.net Trang 30
Thêm mới dữ liệu:
- Nhập theo dữ liệu dòng, ựúng nguyên tắc dữ liệu khi thiết kế
- điều chỉnh bảng mã Unicode nếu sử dụng tiếng việt
- Esc: ựể hủy 1 dòng ựang nhập
- Dữ liệu tự ựộng lưu khi người dùng nhập
- đóng cửa sổ Table ựể hoàn thành việc nhập liệu vào 1 Table
điều chỉnh dữ lịêu:
Tại cửa sổ Table ựang mở : Click trực tiếp vào ô cần ựiều chỉnh dữ liệu
Xoá dữ liệu:
Tại cửa sổ Table ựang mở : Click ựầu dòng cần xóa Deletet
Ghi chú: SQLServer sẽ tự ựộng kiểm tra các ràng buộc dữ liệu khi người sử dụng cập
nhật dữ liệu(Sai sẽ xuất hiện báo lỗi)
3.7.2 Sử dụng câu lệnh trong QueryAnalyzer
Tại cửa sổ Query Analyzer chọn CSDL làm việc: Use <Tên DataBase>
Vắ dụ: Use QuanLyBH
Thêm mới dữ liệu
Cú pháp:
Insert Into <Table_Name> [<Column_List>] Values(<Value_List>)
Hay nhập theo trật tự cho tất cả các cột từ trái sang phải
Insert Into <Table_Name> Values(<Value_List>)
Vắ dụ:
Insert Into LoaiSP (MaLoai,TenLoai) Values(1,N'Dầu gội')
Insert Into LoaiSP Values(1,N'Dầu gội')
Ghi chú: Thêm N trước văn bản Unicode
Xem dữ liệu trong 1 Table
Cú pháp:
Select * From <Tên Table>
This is trial version www.adultpdf.com