Khi bạn xác định một cột trong một bảng, bạn gán thuộc tính cho nó như được chỉ ra bởi các thiết kế của bảng Sản phẩm trong hình 12-3. Hai thuộc tính quan trọng nhất đối với một cột là Tên, cung cấp một tên xác định cho các cột, và kiểu dữ liệu, trong đó quy định các loại thông tin có thể được lưu trữ trong cột. Với SQL Server, bạn có thể chọn từ các loại hệ thống dữ liệu giống như những người trong hình này, và bạn có thể định nghĩa các kiểu dữ liệu riêng của bạn được dựa trên các loại hệ thống dữ liệu. Khi bạn xác định mỗi cột trong một bảng, bạn thường cố gắng phân định các loại dữ liệu đó sẽ giảm thiểu việc sử dụng các đĩa lưu trữ bởi vì đó sẽ cải thiện hiệu suất của các truy vấn sau đó.
Ngoài một kiểu dữ liệu, bạn phải cho biết các cột có thể lưu trữ một giá trị null. Một đại diện cho một giá trị vô đó là không rõ, không có sẵn, hoặc không Appli-cáp. Các bảng Sản phẩm, ví dụ, cho phép null trong cột ImageFile của nó.
Bạn cũng có thể chỉ định một giá trị mặc định cho mỗi cột. Sau đó, giá trị được gán cho cột nếu giá trị khác không được cung cấp. Nếu một cột không cho phép null và không có một giá trị mặc định, bạn phải cung cấp một giá trị cho cột khi bạn thêm một hàng mới vào bảng. Nếu không, sẽ xảy ra lỗi.
Mỗi bảng có thể cũng chứa một số cột mà giá trị được tạo ra tự động bởi DBMS. Trong SQL Server, một cột như thế này được gọi là một cột iden¬tity, và bạn thiết lập nó bằng cách sử dụng nhận dạng, Identity Seed, và các đặc tính nhận dạng tăng dần. Cột sắc thường được sử dụng làm khóa chính cho một bảng.
Một chế kiểm tra xác định các giá trị có thể chấp nhận cho một cột. Ví dụ, bạn có thể xác định một hạn chế kiểm tra cho bảng Sản phẩm trong hình này để đảm bảo rằng các cột UnitPrice là lớn hơn không. Một hạn chế kiểm tra như thế này có thể được xác định ở mức độ cột vì nó chỉ đề cập đến các cột nó
buộc. Nếu ràng buộc kiểm tra cho một cột cần tham khảo các cột khác trong bảng, tuy nhiên, nó có thể được xác định ở mức bảng.
Sau khi xác định các khó khăn cho một cơ sở dữ liệu, họ đang được quản lý bởi các DBMS. Nếu, ví dụ, một người dùng cố gắng để thêm một hàng với dữ liệu vi phạm một
hạn chế, các DBMS sẽ gửi một mã lỗi thích hợp lại để các ứng dụng mà không cần thêm các dòng mới vào bảng. Các ứng dụng sau đó có thể đáp ứng với các mã lỗi.
Một lựa chọn khác là để xác nhận các dữ liệu đó sẽ được thêm vào một cơ sở dữ liệu trước khi chương trình cố gắng để thêm nó. Bằng cách đó, những hạn chế không nên cần thiết và các chương trình cần chạy hiệu quả hơn. Trong nhiều trường hợp, cả hai xác nhận dữ liệu và các ràng buộc được sử dụng. Bằng cách đó, các chương trình hoạt động hiệu quả hơn nếu các thói quen xác nhận dữ liệu làm việc, nhưng khó khăn là có trong trường hợp các thói quen xác nhận dữ liệu không làm việc hoặc không được mã hóa.
đang được dịch, vui lòng đợi..
