DDL中的check約束學習

2021-06-06 20:26:51 字數 332 閱讀 2881

1.check的作用是:定義每一行必須滿足的條件。

2.check約束可以有以下六種:

not null:非空約束;

unique:唯一約束;

primary key:主鍵約束;

foreign key:外來鍵約束;

check:檢查約束;

default:預設約束。

3.check使用注意事項:不可以對以下表示式使用check:

currval、nextval、level和rownum等偽列的引用;

sysdate、uid、user和userenv等函式的呼叫;

對其他行中其他值的查詢。  

MySQL中CHECK約束無效

今天才知道在mysql中check約束是無效的,例如下面一段 在建立表table1時新增了check約束,要求field1欄位的值大於零,隨後向field1欄位插入 1,這明顯違反check約束,但這段 在mysql中卻可以執行成功。create table table1 field1 int,ch...

oracle中CHECK 約束的使用

check 約束用於限制列中的值的範圍。如果對單個列定義 check 約束,那麼該列只允許特定的值。如果對乙個表定義 check 約束,那麼此約束會基於行中其他列的值在特定的列中對值進行限制。create table 時的 sql check 約束 create table persons p id...

MySQL的SQL中CHECK約束的支援問題

後記 最近在建立mysql表的時候,對於建表要求給的check約束不是很清楚,就上網查了一下mysql的check約束。結果網上的回答通過例項告訴我mysql能接收check,但接收後不解析,也就是說沒用。但是自己親手試過之後發現自己的mysql確實能實現check的約束,這一點就讓我很迷惑。che...