Tải bản đầy đủ (.doc) (8 trang)

SQL server 2000 giá trị mặc định (default)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (206.94 KB, 8 trang )

-1-

SQL Server 2000 : Giá trị mặc định (Default)
Giống như khái niệm DEFAULT constraint, đối tượng giá trị
mặc định cho phép bạn tạo ra giá trị mặc định cho các cột dữ liệu
hoặc các kiểu dữ liệu do người dùng định nghĩa trong trường
hợp khi thêm mới mẫu tin vào bảng mà giá trị tại các cột đó
người dùng có thể không cung cấp.

1/- Khái niệm :
Cũng giống như kiểu dữ liệu do người dùng định nghĩa hoặc quy tắc kiểm tra miền giá trị
dữ liệu, giá trị mặc định thường được sử dụng cho các cơ sở dữ liệu lớn nhằm đảm bảo
tính nhất quán về dữ liệu của các cột trong bảng.
Ví dụ :
Trong một cơ sở dữ liệu gồmc ó các bảng : khách hàng, nhà cung cấp, nhân viên. Trong
mỗi bảng lại có cột website (công ty hoặc cá nhân) dùng để lưu địa chỉ trang web của các
khách hàng, nhà cung cấp, nhân viên. Tuy nhiên dữ liệu tại cột này là không bắt buộc
phải có bởi vì không phải khách hàng nào, nhà cung cấp nào hoặc nhân viên nào cũng có
trang web riêng. Thay vì để dữ liệu hiểnt hị tại các cột này là chữ "NULL" khi người sử
dụng không đưa vào giá trị tại cột này thì bạn sẽ tạo giá trị mặc định cho các cột này là
chuỗi "chưa có".
2/- Tạo mới giá trị mặc định :
Giống như các đối tượng khác trong Microsoft SQL Server, bạn có 2 cách để có thể tạo
mới đối tượng giá trị mặc định. Các bước bên dưới sẽ hướng dẫn bạn cách thức tạo ra giá
trị mặc định bằng tiện ích Enterprise Manager.
Bước 1 :
Khởi động tiện ích Enterprise Manager, chọn chức năng New Default … trong thực đơn
tắt sau khi nhấn chuột phải trên đối tượng Default.


-2-



Chọn New Default để tạo giá trị mặc định
Bước 2 :
Trong màn hình định nghĩa giá trị mặc định lần lượt chỉ định các thuộc tính liên quan đến
giá trị mặc định bao gồm : tên của giá trị mặc định, giá trị cụ thể hoặc tên hàm hoặc biểu
thức tính toán làm giá trị mặc định.

Các thuộc tính liên quan đến giá trị mặc định
Sau cùng nhấn OK để lưu lại giá trị mặc định mới vừa định nghĩa. Lúc bây giờ trong cơ
sở dữ liệu Quản lý bán hàng của bạn sẽ có thêm một đối tượng giá trị mặc định mới vừa
tạo.


-3Ngoài ra bạn cũng có thể tạo mới giá trị mặc định bằng lệnh CREATE DEFAULT với
cú pháp như sau :
Cú pháp :

Trong đó :
• Tên giá trị mặc định : tên giá trị mặc định được tạo mới, tên giá trị mặc định này phải
là duy nhất trong một cơ sở dữ liệu.
• Biểu thức : là một giá trị cụ thể nào đó như số, ngày, chuỗi hoặc một hàm, biểu thức
tính toán.
Ví dụ :
Để tạo giá trị mặc định cho các cột điện thoại là chuỗi "Chưa có", bạn thực hiện câu lệnh
CREATE DEFAULT như sau :

3/- Liên kết giá trị mặc định vào cột dữ liệu :
Sau khi tạo ra các giá trị mặc định bằngt iện ích Enterprise Manager hoặc câu lệnh
CREATE DEFAULT, các giá trị mặc định này vẫn chưa hoạt động cho đến khi nào bạn
chỉ định rõ ràng nó sẽ liên kết các giá trị mặc định vào những cột nào trong bảng hoặc

những kiểu dữ liệu do người dùng định nghĩa. Ngay sau khi liên kết, các giá trị mặc định
sẽ được áp dụng cho các cột khi thêm mới dữ liệu mà người sử dụng không cung cấp
thông tin tại các cột đó.
Các bước bên dưới hướng dẫn bạn cách thức để liên kết giá trị mặc định vào một cột trên
bảng dữ liệu trong tiện ích Enterprise Manager.
Bước 1 :
Khởi động tiện ích Enterprise Manager, chọn chức năng Properties trong thực đơn tắt
sau khi nhấn chuột phải trên tên của giá trị mặc định muốn liên kết vào các cột trong
bảng hoặc kiểu dữ liệu do người dùng định nghĩa. Trong màn hình các thuộc tính của giá
trị mặc định, nhấn nút Bind Columns để chọn ra các cột trong bảng mà giá trị mặc định
sẽ liên kết vào.


-4-

Chọn giá trị mặc định liên kết cho các cột
Bước 2 :
Trong màn hình chọn các cột, bạn lần lượt chọn bảng dữ liệu, các cột trong bảng đó để
liên kết giá trị mặc định vào các cột. Sau đó nhấn nút Add.

Chọn các cột để liên kết với giá trị mặc định
Bước 3 :


-5Trong màn hình chọn các cột, bạn nhấn nút Apply để liên kết giá trị mặc định cho các cột
đã chọn trước đó. Bạn có thể quay lại thực hiện lại bước 2 và bước 3 trước đó cho các cột
nằm bên các bảng khác.

Chọn Apply để liên kết giá trị mặc định cho cột đã chọn
Bước 4 :

Sau cùng nhấn OK để đóng màn hình chọn các cột. Quay lại màn hình các thuộc tính của
giá trị mặc định, nhấn OK để kết thúc quá trình liên kết các giá trị mặc định vào các cột.
Lưu ý :
Đối với các cột đã có định nghĩa giá trị mặc định trước đó bằng mệnh đề DEFAULT
hoặc DEFAULT constraint thì bạn không được phép liên kết đối tượng giá trị mặc định
vào các cột này bởi vì hành động này là dư thừa.
Ngoài ra bạn cũng có thể liên kết giá trị mặc định cho các cột trong bảng hoặc các kiểu
dữ liệu do người dùng định nghĩa bằng thủ tục nội tại hệ thống sp_bindefault.
Cú pháp :

Trong đó :


-6• Tên mặc định : tên giá trị mặc định đã được tạo ra trước đó.
• Tên đối tượng : tên cột của bảng hoặc tên kiểu dữ liệu do người dùng định nghĩa.
Thông thường nếu sử dụng tên của cột trong bảng thì bắt buộc phải theo định dạng :
tên_bảng.tên_cột.
Ví dụ :
Để liên kết giá trị mặc định vừa tạo def_Dienthoai vào cột Dienthoai có trong bảng
NHACC, bạn thực hiện câu lệnh như sau :

Bây giờ khi thêm một nhà cung cấp mới vào bảng NHACC thì giá trị mặc định của cột
điện thoại sẽ là chữ "Chưa có" khi người sử dụng bỏ trống cột dữ liệu điện thoại
(Dienthoai).
Khi đó nếu bạn thêm nhà cung cấp C07 với thông tin như sau :

Thì giá trị tại cột điện thoại của nhà cung cấp C07 sẽ là chữ "Chưa có".
Khi bạn không muốn liên kết giá trị mặc định vào các cột trong bảng hoặc các kiểu dữ
liệu do người dùng định nghĩa thì bắt buộc phải sử dụng thủ tục nội tại hệ thống có tên là
sp_unbindefault để làm điều đó.

Cú pháp :

Trong đó :
• Tên đối tượng : tên cột của bảng hoặc tên kiểu dữ liệu do người dùng định nghĩa.
Thông thường tên của cột bắt buộc phải theo định dạng là : tên_bảng.tên_cột.
Ví dụ :
Để hủy bỏ giá trị mặc định đã liên kết cho cột điện thoại trong bảng NHACC trước đây,
bạn thực hiện câu lệnh sau :


-74/- Xóa giá trị mặc định :
Khi giá trị mặc định trong cơ sở dữ liệu không còn sử dụng cho các kiểu dữ liệu do người
dùng định nghĩa hoặc các cột trong bảng, bạn có thể hủy bỏ nó đi. Tuy nhiên nếu giá trị
mặc định còn được liên kết vào ít nhất một cột bên trong một bảng nào đó hoặc một kiểu
dữ liệu do người dùng định nghĩa thì bạn không thể nào hủy được nó.
Để hủy một giá trị mặc định, bạn chọn chức năng Delete trên thực đơn tắt sau khi nhấn
chuột phải vào tên giá trị mặc định muốn hủy bỏ trong tiện ích Enterprise Manager và
xác nhận đồng ý hủy bằng cách chọn nút Drop All trong màn hình hủy bỏ các đối tượng
bên trong cơ sở dữ liệu của Microsoft SQL Server.

Màn hình xác nhận hủy bỏ giá trị mặc định
Ngoài ra bạn cũng có thể sử dụng lệnh có tên DROP DEFAULT để hủy bỏ giá trị mặc
định khi không còn dùng nữa.
Cú pháp :

Trong đó :
• Tên giá trị mặc định : tên các giá trị mặc định muốn hủy bỏ. Các giá trị mặc định này
phải tồn tại trong cơ sở dữ liệu và không còn liên kết với bất kỳ cột nào trong bảng hoặc
các kiểu dữ liệu do người dùng định nghĩa.
Ví dụ :

Hủy giá trị mặc định có tên def_Dienthoai trong cơ sở dữ liệu QLBanHang.


-8-

Tuy nhiên hệ thống sẽ xuất hiện thông báo lỗi nếu như giá trị mặc định vẫn còn liên kết
với cột điện thoại trong bảng NHACC.



×