SQL表的約束

2021-08-20 20:51:03 字數 533 閱讀 7010

create table students(s# char(8) not null unique,

sname char(10),s*** char(2) constraint cts*** check

(s***='男' or s***='女'),sage integer check(sage>1 and sage<150),

d# char(2) references dept(d#) on delete cascade,

sclass char(6))

這段**當中 check內的東西是對這一列輸入值的約束,check前面的內容是對這個約束的命名,

其中的內容可以用select查詢。

references dept(d#)是以dept表中的主鍵d#做附鍵

on delete cascade,的意思表示級聯操作,就是說,如果主鍵表中被參考字段更新,外來鍵表中也更新,主鍵表中的記錄被刪除,外來鍵表中改行也相應刪除。

如果在最後加上一句primary key (d#),代表以d#為主鍵,當然也可以在列的定義上直接加。

sql 表的約束1

為了增強表的安全性 在資料庫中建立的使用者表必須安全 需要對錶中的每列數進行約束。約束方式有兩種 1 建表時設定約束 2 建表後追加約束 當應用程式訪問資料庫時,還要注意的是,如果是資料庫設計方面的操作,一定要在資料庫中完成,而不能借用其他形式 如在應用程式中操作 單錶的五類約束 多表的一類約束 第...

Programmer列約束與表約束(SQL 語句)

表結構的建立與修改 sql 語句 一 表結構定義語法格式 create table 列名 列型別 列屬性 列約束 表約束 on textimage on 列型別 就是sql server 支援的型別及相應的寬度.列屬性 列屬性中可以是如下幾種屬性 1 預設值default 常量表示式.2 標識ide...

SQL 的常用更改表約束

sql 的常用更改表約束 一 修改字段預設值 alter table 表名 drop constraint 約束名字 說明 刪除表的字段的原有約束 alter table 表名 add constraint 約束名字 default 預設值 for 欄位名稱 說明 新增乙個表的字段的約束並指定預設值...