MySQLのOthers--制約(制約)の例

ENUMの制約

- ENUMを使用すると、ユーザーの入力を制限するために
、CREATE  TABLEを学生
        StudentID INT AUTO_INCREMENTにPRIMARY  KEY 
        のClassID INT 
        StudentName VARCHAR200は)、
        セックスENUM(' 人のために'' 女性のための' 

 

デフォルト値の制約

- のテーブル作成時のデフォルト値の時間を指定し
、CREATE  TABLEを学生
        StudentID INT AUTO_INCREMENTにPRIMARY  KEY 
        のClassID INT 
        StudentName VARCHARを200でDEFAULT  '' 


- デフォルトの制約を作成するには、テーブルを作成した後
、CREATE  TABLEを学生
        StudentID INT AUTO_INCREMENT PRIMARY  KEY 
        のClassID INT 
        StudentName VARCHAR200 

ALTER  TABLE 学生
 ALTER  COLUMNは StudentName SETを DEFAULT  '' 


- デフォルトの制約が見 
SHOW CREATE  TABLEの学生。

 

外部キー制約

MYSQLの外部キー制約が唯一のインスタントチェック(即時チェック)、SQL Serverと同じをサポートしています。

外部キー制約の遅延チェック(繰延チェック)のためORACLEサポート。

あなたは外部キー制約を作成すると、MySQLは外部キー制約に起因するデッドロックを避けるために、インデックスを追加するために、外部キー制約列をデフォルト。

- クラス参照されるテーブル作成
CREATE  TABLE クラス
        のClassID INT AUTO_INCREMENT PRIMARY  KEY 
        クラス名VARCHAR200 
;)

- あなたは、外部キー参照クラスの学生のテーブル表を作成する
CREATE  TABLEの学生
        StudentID INT AUTO_INCREMENT PRIMARY  KEY 
        のClassID INT 
        StudentNameをVARCHAR200で)、
         FOREIGN  KEY(のClassID)REFERENCESクラス(のClassID) 


- Studentテーブルを作成して、外部キーを追加
CREATE  TABLEの学生
        StudentID INT AUTO_INCREMENT PRIMARY  KEY 
        のClassID INT 
        StudentName VARCHAR200 )、
); 
ALTER  TABLE学生は、ADD  FOREIGN  KEY(のClassID)REFERENCES クラス(のClassIDを); 



- 外部キーを参照してください。
SELECT  *  
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
 WHERE CONSTRAINT_SCHEMA = "testdb1 ' 
AND TABLE_NAME = ' 学生" \ G 

***************************  1*************************** 
       CONSTRAINT_CATALOG:DEF 
        CONSTRAINT_SCHEMA:testdb1 
          CONSTRAINT_NAME:student_ibfk_1 
UNIQUE_CONSTRAINT_CATALOG:DEF 
UNIQUE_CONSTRAINT_SCHEMA:testdb1 
   UNIQUE_CONSTRAINT_NAME:PRIMARY 
             MATCH_OPTION:NONE 
              UPDATE_RULE :RESTRICT 
              DELETE_RULEを:RESTRICT 
               学生:TABLE_NAME 
    REFERENCED_TABLE_NAME:クラスを

データリード処理においては、導入効率を向上させるために、あなたはそれらの導入口の後に、外部キーを無効にするチェック。

-外部キーチェックを無効
0 = @@ SET FOREIGN_KEY_CHECKSを; 

-外部キーチェックが有効
@@ FOREIGN_KEY_CHECKS = 1を設定します。

 

唯一の制約

- するときは、外部キーの参照クラスの学生のテーブル表を作成する
CREATE  TABLEの学生
        StudentID INT AUTO_INCREMENT PRIMARY  KEY 
        のClassID INT 
        StudentName VARCHAR200 )、
         UNIQUE  KEY (StudentName) 


- その後、テーブルに作成するユニーク制約を追加
CREATE  TABLEの学生
        StudentIDをINT AUTO_INCREMENT PRIMARY  KEY 
        のClassID INT 
        StudentName VARCHAR200 
ALTER  TABLE学生ADD  UNIQUE  KEY (StudentName)。


- 查看约束
SELECT  *  
FROM information_schema.TABLE_CONSTRAINTS
 CONSTRAINT_SCHEMA = ' testdb1 ' AND TABLE_NAMEは= ' 学生' \ G ************************** * 1*************************** 
CONSTRAINT_CATALOG:DEF 
CONSTRAINT_SCHEMA:testdb1 
   CONSTRAINT_NAME:PRIMARY 
      TABLE_SCHEMA:testdb1


  
        TABLE_NAME:学生 
   CONSTRAINT_TYPE:PRIMARY  KEY 
***************************  2*************************** 
CONSTRAINT_CATALOG:DEF 
CONSTRAINT_SCHEMA:testdb1 
   CONSTRAINT_NAME:StudentName 
      TABLE_SCHEMA:testdb1 
        TABLE_NAME:学生
   CONSTRAINT_TYPE:UNIQUE

 

おすすめ

転載: www.cnblogs.com/gaogao67/p/11324397.html
おすすめ