- Ta có thể tạo một database dùng để chứa dữ liệu được các ứng dụng thường xuyên cập nhật.. Ta không thể dùng cơ chế backup và restore trong trường hợp này -> cơ chế replication của SQL
Trang 1Tài liệu SQL Server
1 Giới thiệu (Introduction)
Chuẩn
(Standard)
- Rất thích hợp cho các công ty vừa và nhỏ vì giá thành rẻ hơn nhiều so với Enterprise Edition, nhưnglại bị giới hạn một số chức năng cao cấp (Advanced features) khác, edition này có thể chạy tốt trên hệthống lên đến 4 CPU và 2 GB RAM
Desktop Engin
(MSDE) - Đây chỉ là một engine chạy trên desktop và không có user interface (giao diện) Thích hợp cho việc triển khai ứng dụng ở máy client Kích thước database bị giới hạn khoảng 2 GB
Win CE - Dùng cho các ứng dụng chạy trên Windows CE
Dùng thử (Trial) - Có các tính năng của Enterprise Edition, download free, nhưng giới hạn thời gian sử dụng.
1.2 Yêu cầu phần cứng (Hardware requirement)
1.3 Yêu cầu hệ điều hành (OS requirement)
Trang 2Tài liệu SQL Server
+ Hộp nếu cài trên máy cục bộ.
+ Hộp nếu cài trên máy từ xa.
Trang 3Tài liệu SQL Server
+ Hộp nếu chỉ cài công cụ trên máy khách.
+ Hộp nếu cài công cụ trên máy khách lẫn máy chủ.
+ Hộp nếu chỉ cài phần kết nối.
Tên SQL Server
(Instance Name)
- Chọn hộp nếu dùng tên mặc định (ISCN-Named of SQL server) nhận diện bởi tên máy.
- Bỏ chọn hộp nếu dùng tên tự đặt và nhập tên đó vào hộp
Trang 4Tài liệu SQL Server
Loại cài đặt
(Setup Type)
- Chọn loại cài đặt: Typical, Minimum, Custom.
- Chọn thư mục cài đặt:
- Chứa file chương trình ở mục
- Chứa file dữ liệu ở mục
Tài khoản
(Services
Accounts)
- Chọn loại tài khoản:
+ Hộp nếu chọn tài khoản của máy cục bộ.
+ Hộp nếu chọn tài khoảng của máy mạng.
dùng SQL Server (User SQL Server) lẫn người dùng Windows (User Windows).
+ sa (System Administrator) là tài khoản có quyền cao nhất -> nên cài mật khẩu ngay.
Thông báo bắt đầu
Trang 5Tài liệu SQL Server
+ Enterprise Manager -> Tools -> SQL Server Configuration Properties -> Security -> Startup service account -> điều chỉnh lại mật khẩu.
- Nếu ta đổi tên máy tính (Computer Name) của máy đang cài SQL Server, cần cập nhật lại thông tin này trong table hệ thống sysservers, bằng cách thi hành 2 thủ tục sau:
sp_dropserver old_name Go
Sp_addserver new_name, local Go
Ý kiến bản quyền của người
Trang 6Tài liệu SQL Server
Thành phần để cài đặt
(Components to Install)
- Chọn tất cả hộp.
Trang 7Tài liệu SQL Server
Tên SQL Server
(Instance Name)
- Chọn hộp nếu dùng tên mặc định (ISCN-Named instance of SQL
server) nhận diện bởi tên máy.
- Chọn hộp nếu dùng tên tự đặt và nhập tên đó vào hộp
- Chọn loại tài khoản:
+ Hộp nếu chọn tài khoản của máy cục bộ.
+ Hộp nếu chọn tài khoảng của máy mạng.
Trang 8Tài liệu SQL Server
Tùy chọn cài đặt báo cáo
Trang 9Tài liệu SQL Server
3 Cửa sổ làm việc (Window)
3.1 Khởi động (Open),Thoát (Exit)
3.1.1 2000
Giới
thiệu-Introduction - Là 1 hệ quản trị cơ sở dữ liệu của Microsoft.
Khởi động-Open
- Click chọn nút nút > chọn > chọn Microsoft SQL Server > chọn
+ Enterprise Manager: Quản lý SQL Server.
+ Query Analyzer: Nhập và thực hiện các câu lệnh SQL.
hay chọn menu > chọn SQL Query Analyzer.
+ Client Network Utility: Cấu hình để kết nối với các SQL Server khác trên mạng + Server Network Utility: Cấu hình Server để cho phép các máy khác kết nối vào + Configure SQL XML Support in IIS: Cấu hình hỗ trợ SQL XML trong IIS.
+ Import and Export Data: Nhập / Xuất dữ liệu từ các CSDL khác.
+ Service Manager: Khởi động hay dùng các dịch vụ SQL Server, SQL Server Agent.
Thoát-Exit
3.1.2 2005
Giới thiệu- Introduction - Là 1 hệ quản trị cơ sở dữ liệu của Microsoft.
Khởi động-Open - Click chọn nút nút > chọn > chọn Microsoft SQL Server 2005 > chọn
+ SQL Server Management Studio: Quản lý SQL Server.
Thoát-Exit
Trang 10Tài liệu SQL Server
Sp_addserver new_name, local Go
Trang 11Tài liệu SQL Server
Set cn = Nothing
3.5 Kiến trúc (Architecture)
Relational Database
Engine
- Đây là phần cốt lõi của SQL Server.
- Engine có khả năng chứa data ở các quy mô khác nhau dưới dạng table
- Hỗ trợ hầu hết các kiểu kết nối (Data connection) thông dụng của Microsoft như ADO (ActiveX Data Objects), OLE DB, and ODBC (Open Database Connectivity).
- Có khả năng tự điều chỉnh (tune up) như sử dụng thêm các tài nguyên máy khi cần và trả lại
tài nguyên cho hệ điều hành khi một user log off
Replication
- Cơ chế tạo bản sao (Replica).
- Ta có thể tạo một database dùng để chứa dữ liệu được các ứng dụng thường xuyên cập nhật Đồng thời lại tạo thêm một database giống y hệt như thế trên một server khác để chạy báo cáo (report database) (cách làm này thường dùng để tránh ảnh hưởng đến hiệu suất của server
chính).
- Vấn đề là report database cần phải được cập nhật thường xuyên để bảo đảm tính chính xác của các báo cáo Ta không thể dùng cơ chế backup và restore trong trường hợp này -> cơ chế replication của SQL Server sẽ được sử dụng để bảo đảm cho dữ liệu ở 2 database được đồng
- Dịch vụ phân tích dữ liệu của Microsoft.
- Dữ liệu (Data) chứa trong database sẽ chẳng có ý nghĩa gì nếu như ta không thể lấy những thông tin (Information) bổ ích từ đó
- Microsoft cung cấp cho ta một công cụ rất mạnh Analysis Service giúp cho việc phân tích dữ
liệu trở nên dễ dàng và hiệu quả với khái niệm hình khối nhiều chiều (Multi-demension cubes)
và kỹ thuật “khai phá mỏ dữ liệu” (Data mining).
Một số dịch vụ khác
- English Query:
+ Dịch vụ này giúp ta có thể truy vấn dữ liệu bằng plain English
- Meta Data Service:
+ Dịch vụ này giúp cho việc quản lý Meta data dễ dàng hơn
+ Meta data là những thông tin mô tả về cấu trúc của data trong database như data thuộc loại nào? String, Integer, … một cột nào đó có phải là Primary Key hay không?
4 Định nghĩa dữ liệu (Data Difinition)
4.1 Cơ sở dữ liệu (Database) – MDF & LDF
4.1.1 Kiến trúc (Architecture)
Giới thiệu
(Introduction) - Mỗi database của SQL Server được tạo ra từ nhiều tập tin của hệ điều hành Các tập tin này có thể nhóm lại vào nhóm tập tin (filegroups) để dễ dàng quản lý và nâng cao hiệu suất.
Files - Một database file có thể là một data file hay một log file.
- Data files được dùng để lưu trữ dữ liệu (data) và đối tượng (objects) như tables, indexes, views,
triggers, stored procedures Có 2 loại data files: primary và secondary.
- Mỗi database phải được tạo ra với ít nhất một data file và một log file Mỗi files chỉ được sử dụng
bởi một database, database không thể chia sẻ files
- Có 3 loại files:
+ Primary data file: Chứa tất cả các thông tin khởi động của database cùng các table và
đối tượng hệ thống Nó trỏ đến toàn bộ các file còn lại tạo ra trong database Nó có thể lưu
leonguyen.com
Phân loại
Primary data fileSecondary data fileTransaction log file
11
Trang 12Tài liệu SQL Server
các table và đối tượng của người dùng Mỗi database có đúng một primary file Phần mở rộng là mdf.
+ Secondary data file (tùy chọn): Có thể dùng lưu trữ dữ liệu và đối tượng không có trong
primary file Database có thể không có secondary files nếu tất cả dữ liệu của nó lưu trong
primary file Một số khác lại cần nhiều secondary files để trải dữ liệu trên nhiều đĩa nhằm
tăng hiệu suất Phần mở rộng thường là ndf.
+ Transaction log file: Lưu tất cả các thông tin về transaction log để phục hồi (recover) database Mỗi database phải có ít nhất một log file và có thể có nhiều log files Phần mở rộng là ldf.
- Kích thước tối đa của data file là 32 Terabytes (TB) của một log file là 4TB.
- Một database có thể chỉ có một primary data file, và một transaction log file.
- Database phức tạp hơn có thể có 1 primary data files, 5 secondary data files, và 2 transaction log
files
- Làm thế nào để dữ liệu có thể trải trên các data files? Câu trả lời là dùng filegroups.
Filegroups
- Filegroups cho phép ta nhóm các file để dễ dàng quản lý
- Filegroups có thể nâng hiệu suất bằng cách cho phép một database có thể trải trên nhiều đĩa hoặc
hệ thống RAID
- Có 3 loại filegroups:
+ Primary filegroups: Chứa primary data file và tất cả các file không được đặt vào
filegroup khác
o System tables: Dùng để định nghĩa users, objects, và quyền trên database
System tables được đặt trên primary filegroup của database đó SQL Server tự động tạo ra system tables khi chúng ta tạo database
+ User-defined filegroups: Bao gồm các filegroups do user tạo ra Một table hay index có
thể được tạo ra và đặt trong các filegroup riêng của user
+ Default filegroups: Chứa các tables và indexes khi tạo không chỉ rõ filegroup Default filegroup mặc định là primary filegroup Thành viên của db_ower có thể thay đổi default
filegroup
- Để tăng hiệu suất, ta có thể tạo tables và indexes trên các filegroups khác nhau: Ví dụ: Ta có thể đặt
một table được sử dụng rất nhiều vào một filegroup trên một disk array lớn (vd: bao gồm 10 disk drives) và đặt table khác có lượng sử dụng ít hơn vào filegroup đặt trên một đĩa khác Như vậy
table có lượng truy cập nhiều sẽ được trải trên một lượng lớn đĩa, nhờ đó có thể tăng tính song song cho vấn đề I/O của đĩa
- Một lợi điểm khác khi dùng filegroups là SQL Server cho phép ta có thể backup database dựa trên file hay filegroups (khi database quá lớn ta không thể backup cùng lúc được)
Một số quy tắc
Ta nên có chiến lược thiết kế tốt cho việc sử dụng từng files và filegroups trước khi tạo database
Để làm điều này, cần nắm 1 quy tắc sau:
- File và filegroup không thể tạo ra bởi nhiều database
- Một file chỉ có thể là thành viên (member) của một filegroup
- Data và thông tin không thể cùng một file
- Transaction log files không thể là thành phần của một filegroups
- Khi 1 file được gán là thành phần của một filegroup, thì nó không thể di chuyển sang một filegroup khác
Một số lời
khuyên
- Hầu hết database có thể làm việc tốt chỉ với 1 primary data file và 1 transaction log file Nếu ta gặp
vấn đề về I/O, có thể dùng filegroup để trải dữ liệu trên nhiều đĩa.
- Luôn luôn đặt log files trên một đĩa vật lý (physical disks) khác với đĩa data files.
- Có thể dùng primary data file cho các tables và objects hệ thống, đồng thời tạo ra 1 hoặc nhiều secondary data files để chứa dữ liệu và đối tượng của người dùng.
- Đặt nonclustered indexes cho table dùng nhiều trong 1 filegroup riêng và trên một đĩa (vật lý) riêng biệt với đĩa chứa dữ liệu của nó trong table
- Đặt các table dùng trong cùng câu query trên những đĩa khác nhau, để tận dụng I/O song song khi search engine tìm kiếm
Chế độ
Automatic File
Growth
- SQL Server cho phép file tự động tăng kích thước khi cần thiết -> giảm gánh nặng cho người
quản trị phải theo dõi và tăng kích thước file
- Một file được tạo ra với kích thước ban đầu (Initial file) Khi dữ liệu đầy, SQL Server sẽ tăng kích thước một lượng, gọi là growth increment Khi vùng này đầy SQL Server lại tiếp tục cấp phát một lượng growth increment khác, cho đến khi hết đĩa hoặc đạt tới kích thước tối đa (maximum file
leonguyen.com
Phân loại
Primary filegroupsUser-defined filegroupsDefault filegroups
12
Trang 13Tài liệu SQL Server
+ Lưu các thông tin của hệ thống như thông tin khởi động, cấu hình SQL Server, các login
accounts, sự tồn tại của tất cả các database, vị trí của primary file, luôn giữ một bản backup gần nhất của master database
- Tempdb:
+ Giữ bảng tạm (temporary tables) và thủ tục lưu trữ tạm (temporary stored procedures)
Database này cũng dùng cho các lưu trữ tạm khi SQL Server cần, ví dụ cho việc sắp xếp dữ liệu Một bản sạch (clean copy) của tempdb database được tạo lại mỗi khi SQL Server khởi động lại
Mỗi system database có riêng primary data file và log file Các databases được lưu trong folder mà
ta đã chỉ định khi cài đặt SQL Server
leonguyen.com
Phân loại
MasterTempdbModelMsdb
13
Trang 14Tài liệu SQL Server
- Click chuột phải lên mục trong khung Console Root > chọn New
Database.
- Sau đó xuất hiện hộp thoại Database Properties như hình sau:
+ Chọn thẻ để thiết lập thuộc tính cho file dữ liệu SQL Server.
+ Chọn thẻ để thiết lập cho file nhật ký SQL Server.
Viết lệnh SQL Cú pháp: Create DataBase Tên_CSDL
On
Trang 15Tài liệu SQL Server
(SQL Statement) ( Name = Tên_do_SQL_quản_lý,
FileName =Đường_dẫn_và_tên_tập_tin_dữ_liệu,Size =Kích_thước_tập_tin_dữ_liệu_ban_đầu,MaxSize =Kích_thước_tối_đa_của_tập_tin_dữ_liệu,FileGrowth =Kích_thước_sẽ_được_thêm_vào_khi_cần_thiết)
Log On(
Name =Tên_do_SQL_quản_lý,FileName =Đường_dẫn_và_tên_tập_tin_nhật_ký,Size =Kích_thước_tập_tin_nhật_ký_ban_đầu,MaxSize =Kích_thước_tối_đa_của_tập_tin_nhật_ký,FileGrowth =Kích_thước_sẽ_được_thêm_vào_khi_cần_thiết)
Chú ý:
* Các phần ON và LOG ON là các phần tùy chọn Tuy nhiên nếu có sử dụng phần ON
và LOG ON thì 2 thông tin NAME và FILENAME là bắt buộc
* Phần ON mô tả các thông tin về tập tin dữ liệu, LOG ON mô tả các thông tin về tập tin nhật ký
* Mặc định, phần mở rộng của tập tin dữ liệu là mdf và tập tin nhật ký là ldf
Dùng db MasterUse Master
Go Nếu tồn tại db thì xóa
If Exists (Select Name From SysDataBases Where Name='db ')
Drop DataBase db
Go Tạo mới db
Create DataBase db
On(
Name=db ,FileName='db.mdf'Size=10,
MaxSize=50,FileGrowth=5)
Log On(
Name='db Log',FileName='db.ldf'Size=5MB,
MaxSize=25MB,FileGrowth=5MB)
Go Sau khi tạo xong thì dùng nóUse db
Go ======================================
Nếu không tồn tại db thì phục hồi db (= 2 file hay 1 file)
If Not Exists (Select Name From Databases Where Name='db ')
Exec Sp_Attach_DB 'db ',' :\db.mdf',' :\dbLog.ldf' Exec Sp_Attach_Single_File_DB 'db ',' :\db.mdf'Go
Trang 16Tài liệu SQL Server
Go Sao lưu CSDL tên là db lên đĩa vật lí với tên tập tin là db.bak
Exec Sp_SaoLuuDVL 'db ',' :\db.bak'
If Exists (Select * From SysObjects Where Name Like 'Sp_PhucHoiDVL')
Drop Procedure Sp_PhucHoiDVLGo
Create Proc Sp_PhucHoiDVL (@TenCSDL VarChar(20),@TenTapTin VarChar(100))
Trang 17Tài liệu SQL Server
Declare @TenTB VarChar(20), @TenTapTinTB VarChar(50)Set @TenTB = 'tb' + @TenCSDL
Set @TenTapTinTB = @DuongDan + '\' + @TenTB + '.dat'Exec Sp_XoaTBCu @TenTB
Tạo thiết bị là 'Disk' với tên thiết bị tb sao lưu tập tin tên là tb
Exec Sp_TaoTBMoi @TenTB,@TenTapTinTB Chỉ sao lưu những phần mới khác với CSDL hiện cóBackup Database @TenCSDL To @TenTB With DifferentialGo
Restore Database @TenCSDL From @TenTB
If Exists (Select Name From SysDatabases Where Name='db '
Exec Sp_PhucHoiTB 'db ',' :\db.dat','tb 'Go
Bản saoRestore FileListOnly From [tb ]
GoRestore Database bs
From db Từ thiết bị luận lý chứ không phải vật líWith Recovery
Move 'db ' To ' :\db.mdf'Move 'db Log' To ' :\db Log.ldf'Go
Sao lưu
(Backup) (Design) Thiết kế - Click chuột phảI lên CSDL > chọn All task > chọn Backup Database.
Viết lệnh SQL (SQL Statement)
Nếu không tồn tại db thì phục hồi db (= 2 file hay 1 file)
If Not Exists (Select Name From Databases Where Name='db ')
Exec Sp_Attach_DB 'db ',' :\db.mdf',' :\dbLog.ldf' Exec Sp_Attach_Single_File_DB 'db ',' :\db.mdf'Go
Exec Sp_SaoLuuDVL 'db ',' :\db.bak'
If Exists (Select * From SysObjects Where Name Like 'Sp_PhucHoiDVL')
Drop Procedure Sp_PhucHoiDVLGo
Create Proc Sp_PhucHoiDVL (@TenCSDL VarChar(20),@TenTapTin VarChar(100))
As
Trang 18Tài liệu SQL Server
Restore Database @TenCSDL From Disk = @TenTapTinGo
Phục hồi CSDL tên là db từ đĩa vật lí với tên tập tin là db.bak
Exec Sp_PhucHoiDVL @TenDVL,' :\db.bak' ======================================
If Exists (Select * From SysObjects Where Name Like 'Sp_XoaTBCu')
Drop Procedure Sp_XoaTBCuGo
Create Proc Sp_XoaTBCu (@TenTB VarChar(20))As
If Exists (Select * From Master.Dbo.SysDevices Where Name Like @TenTB)
Exec Sp_DropDevice @TenTBGo
If Exists (Select * From SysObjects Where Name Like 'Sp_TaoTBMoi')
Drop Procedure Sp_TaoTBMoiGo
Create Proc Sp_TaoTBMoi (@TenTB VarChar(20,@TenTapTin VarChar(50))
Trang 19Tài liệu SQL Server
Restore Database @TenCSDL From @TenTB
If Exists (Select Name From SysDatabases Where Name='db '
Exec Sp_PhucHoiTB 'db ',' :\db.dat','tb 'Go
Bản saoRestore FileListOnly From [tb ]
GoRestore Database bs
From db Từ thiết bị luận lý chứ không phải vật líWith Recovery
Move 'db ' To ' :\db.mdf'Move 'db Log' To ' :\db Log.ldf'Go
4.1.2.2 2005
Tạo (Create)
- Click chuột phải lên mục trong khung tác vụ Object Explorer > chọn New Database.
- Sau đó xuất hiện hộp thoại New Database như hình sau:
+ Thiết lập một số thuộc tính cho file CSDL ở khung danh sách sau:
Trang 20Tài liệu SQL Server
4.2 Bảng (Table)
4.2.1 2000
Tạo (Create)
Thiết kế (Design)
* Mở hộp thoại New Table:
C1: Click chuột phải lên mục trong khung Console Root > chọn New
Table.
C2: Click chọn menu > chọn New Table.
- Sau đó xuất hiện cửa sổ New Table như hình sau:
+ Nhập tên cột vào ô
+ Nhập kiểu dữ liệu vào ô
+ Nhập chiều dài kiểu dữ liệu vào ô + Chọn hay bỏ chọn ô để cho phép dữ liệu để rỗng hay
không rỗng.
+ Chọn cột làm khóa chính rồi chọn nút Set Primary Key
Viết lệnh SQL (SQL Statement)
CREATE TABLE Tên_bảng
( Tên_cột_khóa Kiểu_dữ_liệu(Chiều_dài) NOT NULL PRIMARY KEY,
Tên_cột Kiểu_dữ_liệu(Chiều_dài) NULL
… ) Lưu (Save) Click chọn nút Save trên thanh công cụ.
Trang 21Tài liệu SQL Server
Viết lệnh SQL (SQL Statement)
4.2.2 2005
Tạo (Create)
Thiết kế (Design)
- Click chuột phải lên mục trong khung tác vụ Object Explorer > chọn
New Table.
- Sau đó xuất hiện vùng tạo bảng mới như hình sau:
+ Nhập tên cột vào ô
+ Nhập kiểu dữ liệu kèm theo chiều dài vào ô
+ Chọn hay bỏ chọn ô để cho phép dữ liệu để rỗng hay
không rỗng.
+ Chọn cột làm khóa chính rồi chọn nút Set Primary Key
Viết lệnh SQL (SQL Statement)
CREATE TABLE Tên_bảng
( Tên_cột_khóa Kiểu_dữ_liệu(Chiều_dài) NOT NULL PRIMARY KEY,
Tên_cột Kiểu_dữ_liệu(Chiều_dài) NULL
… ) Lưu (Save) - Click chọn nút Save trên thanh công cụ.
Sửa tên
(Rename)
Thiết kế (Design) - Click chuột phải lên bảng > chọn Rename.
Viết lệnh SQL (SQL Statement)
Mở (Open)
Thiết kế (Design) - Click chuột phải lên bảng > chọn Open Table > Open Table.
Viết lệnh SQL (SQL Statement)
Thiết kế (Design)
Thiết kế (Design) - Click chuột phải lên bảng > chọn Modify.
Viết lệnh SQL (SQL Statement) ALTER TABLE
Xóa (Delete) Thiết kế (Design)
- Click chuột phải lên bảng > chọn Modify.
Viết lệnh SQL (SQL Statement) DROP TABLE
Trang 22Tài liệu SQL Server
4.2.3 Kiểu dữ liệu-Data Type
4.2.3.1 Số nguyên-Integer
Int 32 bit hay 4 byte Từ 2 31 đến 2 31 -1, khoảng +- 2,1 tỷ
SmallInt 16 bit hay 2 byte Từ -32.768 đến 32.767
TinyInt 8 bit hay 1 byte Từ 0 đến 255
Decimal
Numeric 17 byte Từ -1038 đến 1038
4.2.3.2 Số thực-Real
float 32 bit hay 4 byte Từ -1.79x10 38 đến 1.79x10 38
double 64 bit hay 8 byte Từ -1,79x10 308 đến 1,79x10 308
Nchar Mỗi kí tự chiếm 2 byte Từ 1 đến 4000 (Fixed Length, Unicode)
Nvarchar Mỗi kí tự chiếm 2 byte Từ 1 đến 4000 (Fixed Length, Unicode)
Ntext Mỗi kí tự chiếm 2 byte Từ 1 đến 1 tỷ (Unicode)
4.2.3.5 Ngày Giờ-Date Time
4.2.3.6 Luận lý-Logic
Kiểu-Type Độ dài-Length Phạm vi-Scope
Cú pháp CREATE TYPE Tên_kiểu
Trang 23Tài liệu SQL Server
(Syntax) FROM Kiểu_cơ_bản
Ví dụ (Example) CREATE TYPE MyKieu FROM NVARCHAR(20) NOT NULL
4.2.4 Quy tắc (Rule)
Tạo (Create)
Mục đích (Purpose)
- Rule (quy tắc) là một đối tượng trong CSDL
- Khi khai báo một cấu trúc cho table, ta có thể áp quy tắc này, để ràng buộc giá trị nhập
phải thỏa mãn điều kiện Rule đưa ra
Mô hình (Model)
Cú pháp (Syntax) CREATE RULE Tên_Quy_tắc AS Điều_kiện_kiểm_tra
Ví dụ (Example)
CREATE RULE SL
AS @SQL > 04.2.5 Ràng buộc (Constraint)
Ràng
buộc(Constraint)
Với bảng tb tạo ràng buộc tên là PK_ là khóa chính ( ) Với bảng tb tạo ràng buộc tên là KK_ là khóa ngoại ( ) tham chiếu đến khóa chính của bảng tb ( )
Alter Table <Tên_bảng> Add Constraint <PK_Tên_khóa_chính> Primary Key (<Tên_cột_khóa>)
Alter Table <Tên_bảng_con> Add Constraint <FK_ Tên_khóa_ngoại> Foreign Key (Tên_cột_khóa_bảng_con) References
Tên_bảng_cha(Tên_cột_khóa_bảng_cha)
***Alter Table tb Modify cột Not Null
***Alter Table tb Add Constraint _ Unique (cột ) Xem tất cả các khóa của bảng tb
Với bảng tb không kiểm tra ràng buộc
Alter Table tb NoCheck Constraint
Với bảng tb không kiểm tra tất cả ràng buộcAlter Table tb NoCheck Constraint All
Thiết lập NgàyGiờ là dmySet DateTime dmy
Ràng buộc miền giá trị Với bảng tb tạo ràng buộc kiểm tra(cột in (' ', )Alter Table tb Add Constraint Check ( in (' ', ) Ràng buộc Rule
Tạo luật là @cột
Thực hiện gán luật ,với cột của bảng
Create Rule As @
Exec BindRule ' ','tb [ ]'Declare @strSQL VarChar(100)Set @strSQL='Declare 'Execute (@strSQL)
4.2.6 Bảng tạm (Temporary Table)
Khái niệm - Nếu chỉ cần dùng table để lưu dữ liệu tạm thời trong quá trình xử lí, ta có thể tạo table tạm.