Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
97 KB
Nội dung
01/22/14 1
Bài 3: Thao táctrên table
1. Tạo table bằng công cụ
2. Tạo table bằng lệnh T-SQL
3. Tạo mới dữ liệu bằng công cụ
4. Tạo mới dữ liệu bằng lệnh T-SQL
5. Sữa cấu trúc table
6. Xoá table
01/22/14 2
CREATE TABLE
[ database_name.[ owner ] . | owner. ]
table_name
( { < column_definition >
| column_name AS
computed_column_expression
| < table_constraint > ::= [ CONSTRAINT
constraint_name ] }
| [ { PRIMARY KEY | UNIQUE } [ , n ]
)
Tạo table
Định nghĩa cột
Cột tính toán
01/22/14 3
< column_definition > ::= { column_name
data_type }
[ [ DEFAULT constant_expression ]
| [ IDENTITY [ ( seed , increment )
]
[ < column_constraint > ] [ n ]
Định nghĩa các cột
01/22/14 4
Arguments
Table name: tên table
Column name: tên field
computed_column_expression : biểu thức tính toán
từ các field trong cùng table cho field tính toán
Default: giá trị mặc định cho cột
Identity: Giá trị của cột sẽ được tự động tăng theo
seed và inreament, chỉ dùng cho field kiểu số
ROWGUIDCOL : là row global unique identifier
column. Mỗi table chỉ có một cột có thuộc tính này.
01/22/14 5
Constraint
•
Cho phép định nghĩa các rule để bảo toàn
các ràng buộc dữ liệu trong database.
•
Có 2 loại constraints:
–
Column constraint: Được định nghĩa như một
thuộc tính của field và chỉ áp dụng và tham
chiếu trên field đó
–
Table constraint: được khai báo độc lập với
các field trong table và có thể tham chiếu đến
nhiều cột trong table đó.
01/22/14 6
< column_constraint > ::= [ CONSTRAINT
constraint_name ]
{ [ NULL | NOT NULL ]
| [ { PRIMARY KEY | UNIQUE }
[ CLUSTERED | NONCLUSTERED ]
[ WITH FILLFACTOR = fillfactor ]
[ON {filegroup | DEFAULT} ] ]
]
| [ [ FOREIGN KEY ]
REFERENCES ref_table [ ( ref_column ) ]
[ ON DELETE { CASCADE | NO ACTION } ]
[ ON UPDATE { CASCADE | NO ACTION } ]
[ NOT FOR REPLICATION ]
]
| CHECK [ NOT FOR REPLICATION ]
( logical_expression )
}
01/22/14 7
Table constrain
< table_constraint > ::= [ CONSTRAINT constraint_name ]
{ [ { PRIMARY KEY | UNIQUE }
[ CLUSTERED | NONCLUSTERED ]
{ ( column [ ASC | DESC ] [ , n ] ) }
[ WITH FILLFACTOR = fillfactor ]
[ ON { filegroup | DEFAULT } ]
]
| FOREIGN KEY
[ ( column [ , n ] ) ]
REFERENCES ref_table [ ( ref_column [ , n ] ) ]
[ ON DELETE { CASCADE | NO ACTION } ]
[ ON UPDATE { CASCADE | NO ACTION } ]
[ NOT FOR REPLICATION ]
| CHECK [ NOT FOR REPLICATION ]
( search_conditions )
}
01/22/14 8
Ví dụ tạo table Jobs
CREATE TABLE jobs ( job_id smallint
IDENTITY(1,1) PRIMARY KEY
CLUSTERED, job_desc varchar(50)
NOT NULL DEFAULT 'New Position -
title not formalized yet', min_lvl tinyint
NOT NULL CHECK (min_lvl >= 10),
max_lvl tinyint NOT NULL CHECK
(max_lvl <= 250) )
01/22/14 9
Ví dụ tạo table employee
CREATE TABLE employee (
emp_id empid CONSTRAINT PK_emp_id
PRIMARY KEY NONCLUSTERED
CONSTRAINT CK_emp_id
CHECK (emp_id LIKE '[A-Z][A-Z][A-Z][1-9]
[0-9][0-9][0-9][0-9][FM]'
or emp_id LIKE '[A-Z]-[A-Z][1-9][0-9][0-9][0-
9][0-9][FM]'),
fname varchar(20) NOT NULL,
minit char(1) NULL,
01/22/14 10
lname varchar(30) NOT NULL, job_id
smallint NOT NULL DEFAULT 1
REFERENCES jobs(job_id), job_lvl
tinyint DEFAULT 10, pub_id char(4)
NOT NULL DEFAULT ('9952')
REFERENCES publishers(pub_id),
hire_date datetime NOT NULL
DEFAULT (getdate()))
[...]... hoc table tham chiu phi c xoỏ trc 01/22/14 12 Vớ d (tt) Thờm field vo table: alter table table1 add field3 nvarchar(50) Xoỏ field Alter table table1 drop column field2 B rng buc: alter table table1 nocheck constraint ch_f2 01/22/14 13 Túm tt bi hc Chỳng ta cú th qun lý table bng cụng c Enterprise Manager hoc bng cỏc lnh Transact-SQL to table bng T-SQL, ta dựng lnh create table sa cu trỳc table. ..Vớ d to table Publishers CREATE TABLE publishers ( pub_id char(4) NOT NULL CONSTRAINT UPKCL_pubind PRIMARY KEY CLUSTERED CHECK (pub_id IN ('1389', '0736', '0877', '1622', '1756') OR pub_id LIKE '99[0-9][0-9]'), pub_name varchar(40) NULL, city varchar(20) NULL, state char(2) NULL, country varchar(30) NULL DEFAULT('USA') ) 01/22/14 11 Xoỏ table DROP TABLE table_name Khụng th xoỏ mt table m c tham... table sa cu trỳc table bng T-SQL, ta dựng lnh alter table xoỏ table bng T-SQL, ta dựng lnh drop table 01/22/14 14 Table: KHACHHANG Name Type Size MAKH Nvarchar 5 (khoaự chớnh) TENKH Nvarchar 30 DIACHI Nvarchar 50 DThoai Nvarchar 8 EMAIL Nvarchar 30 Raứng buoọc: TENKH not null, DThoai laứ 8 chửừ soỏ 01/22/14 15 To table MonHoc cú 2 fields: Table HocKy cú 2 fields: MaMH kiu chui 10 ký t, khoỏ... kiu chui 10 ký t, khoỏ chớnh TenMH kiu chui 50 ký t, not null MaHK, s t ng tng t 1, khoỏ chớnh TenHK kiu chui 20 ký t Table MonHoc_HocKy 01/22/14 MaMH kiu chui 10 ký t tham chiu t table MonHoc MaHK, s tham chiu t table HocKy Khoỏ chớnh l 2 field MaMH v MaHK 16 Thờm ct s tit kiu s vo table mụn hc 01/22/14 17 . 01/22/14 1
Bài 3: Thao tác trên table
1. Tạo table bằng công cụ
2. Tạo table bằng lệnh T-SQL
3. Tạo mới dữ liệu bằng công cụ
4. Tạo mới dữ liệu bằng lệnh. hoặc table tham chiếu
phải được xoá trước.
01/22/14 13
Ví dụ (tt)
Thêm field vào table:
alter table table1 add field3 nvarchar(50)
Xoá field
Alter table