データテーブルを作成します。01-
#データベーススイッチング 使用TEST_DBを、 #は作成データテーブル 構文規則は以下の通りである: 表のテーブル名(作成 フィールド名1、データタイプ[カラムレベルの制約] [初期値]、 フィールド名2、データタイプ[カラムレベルの制約] [デフォルト値]、 ... [テーブルレベルの制約] ); 注: 1 、作成されるテーブル名、大文字と小文字を区別しないが、SQLキーワードを使用することはできません。 図2は、複数の列を作成するためのデータテーブルは、カンマで区切られました。 例: 表TEST_DB(登録 上記のID INT( 11 )、 名前VARCHAR( 25 )、 DEPTID INT( 11 )、 給与FLOATを ); #データテーブルを表示するためには、成功を作成する 番組表を、
1.1主キー制約
主キー制約は、データの一意の主キー列を必要とし、空にはできません。主キーとマルチセグメントリスト主キーフィールド:主キーは2種類に分け。
#単一フィールド主キー 1 、構文規則は次の通りである: フィールド名データ型PRIMARY KEY [デフォルト] 表TEST_DB(作成 ID INT( 11 )PRIMARY KEY、 名前VARCHAR( 25 )、 (INTをDEPTID 11。 )、 給与FLOATを ); または 作成TEST_DB表( ID INT( 11 )、 名前VARCHAR( 25 )、 (INTをDEPTID 11。 )、 給与FLOAT、 PRIMARY KEY(ID) )。
#複数フィールド主キー 1 、構文規則は以下の通りである: PRIMARY KEY(フィールド1、フィールド2、フィールド3、...) 例: 表TEST_DB(登録 名VARCHAR( 25 )、 INT(DEPTID。11 )、 給与FLOAT、 PRIMARY KEY (名前、DEPTID) );
1.2外部キー制約
外部キーはリンクに2つのデータテーブルとの間で使用される、または複数の行であってもよいです。表は、複数の外部キーを持つことができないヌル値、各外部キー値は、別のテーブルの主キーに等しくなければならない場合、外部キーは、ヌルです。
外部キーは、データの一貫性と整合性を維持することです。
次のように文法は外部キーをルール: 制約外部キー名外部キーフィールド名を1つの参照プライマリ・テーブルのキー列を審判 外部キー名:外部キー制約定義名、テーブルは、同じ外部キー名を持つことができ、 フィールド名:電流テーブルのフィールドは、外部キー列を追加する必要があります。 マスターテーブル:テーブルの外部キーキルトは、テーブルの名前を依存し、 主キー列:主キー列または主キーの組み合わせ主テーブルで定義されています。 例: 表の作成tb_dept1( ID INT( 11 )PRIMARY KEY、 名前VARCHAR( 22である)NOT NULL、 LOCATION VARCHAR( 50 ) ); CREATE TABLEのtb_dept5( ID INT( 11 )PRIMARY KEY、 名前VARCHAR( 25 )、 (INTをDEPTID 11 )、 給与FLOAT、 CONSTRAINT fk_emp_dept1 FOREIGN KEY(DEPTID)を参照のtb_dept1(ID) )。
1.3非空制約
非空制約(NOT NULL)は空白にすることはできませんフィールドの値を参照します。
次のような構文規則は、
フィールド名データ型NOT NULLを
1.4唯一の制約
唯一の制約(UNIQUE制約)は、この列は空にすることができ、ユニーク必要ですが、唯一のヌル一度発生する可能性があります。
構文規則は次の通りである フィールド名データ型UNIQUEは、 テーブルtb_dept1(登録 ID INT( 11 )PRIMARY KEY、 名前VARCHAR( 22である)UNIQUE、 LOCATION VARCHAR( 50 ) ;) #または 表の作成tb_dept1( ID INT( 11 )PRIMARY KEY、 名前をVARCHAR( 22である)、 LOCATION VARCHAR( 50 )、 CONSTRAINT SHT UNIQUE(名) );
UNIQUEとPRIMARY KEY差は次のとおりです。
表には、UNIQUEとして宣言された複数のフィールドを持っていますが、一つだけPRIMARY KEYことができます。
PRIMARY KEY列はヌルではない値として宣言されたが、UNIQUEフィールドがヌル値(NULL)が存在することを可能として宣言しました。
1.5デフォルトの制約
列のデフォルト値を指定します。DEFAULT
表tb_dept4(登録 IDのINT( 11 )PRIMARY KEY、 DEPTID INT( 11)DEFAULT 1234 、 名前VARCHAR( 22 )UNIQUE、 位置VARCHAR( 50 ) )。
表1.6設定属性値が自動的に増加されます
システムが自動的にプライマリキーフィールドを生成します。AUTO_INCREMENTキーワード
表tb_dept4(登録 IDのINT( 11 )PRIMARY KEY AUTO_INCREMENT、 名前VARCHAR( 22 )NOT NULL、 位置VARCHAR( 50 ) )。
1.7ビューのデータテーブル構造
#ビューの文の基本的な構造のデータシートは、DESCは/ DESCRIBE 表の記述、 または単に: DESCテーブル名; MySQLの > DESC tb_dept1; + ---------- + ---------- + ------ + ----- + --- --------- + ------- + |フィールド、|タイプ|ヌル|キー|デフォルト|エキストラ| + - ------------- + --------- + --------- + ------ + ----- + --- + ---- | ID |整数| NO | PRI | NULL | |(11) |名前| VARCHAR(22である)| NO | | NULL | | | LOCATION | VARCHAR(50)| YES | | NULL | | + - ------------- + --------- + --------- + ------ + ----- + --- + ---- 。3列に SET(0.01秒)
#CREATE TABLEステートメントSHOWの詳細な構造を表示するには、 あなたがテーブルを作成するときに、CREATE TABLE文を表示するために使用することができます。 #:構文は次の通りである ; SHOW CREATE TABLEテーブル名\ G 例: MySQLは > 表tb_dept1 \ Gを、SHOW CREATE; ************************************************************行*************************** 1. * 表:tb_dept1 表を作成します:CREATE TABLEのtb_dept1` `( ` id` int型( 11 ) NULL NOT、 `NAME` VARCHAR( 22はNOT NULL)、 ` location` VARCHAR( 50 )は、デフォルトのNULL、 PRIMARY KEY( `id`) )ENGINE = InnoDBのDEFAULT CHARSET = UTF8 1行。に SET(0.00 秒) ERROR: 指定されませんクエリ
データテーブルを変更02-
テーブルを変更するには、ALTER TABLE文を使用MYSQL。
、テーブル名の変更フィールド名やデータのフィールド・タイプの変更、フィールドを追加および削除、フィールドの配置位置を変更するために、変更テーブルストレージエンジン、外部キーテーブル制約を削除する:操作は、テーブルを変更するために使用されています。
2.1テーブル名を変更
構文規則は以下のとおりである: 古いテーブルに新しいテーブル名にALTER TABLE名RENAMEを; 例: MySQLの > 表を表示します。 + ------------------- + | Tables_in_test_db | + --- + ---------------- | tb_dept1 | + ------------------- + 1行で SET(0.00 秒) のMySQL > ALTER TABLE RENAMEは、TOのtb_deptment1をtb_dept1、 クエリの影響を受けるOK、0行( 0.03 秒)は、 MySQLの > 表を表示します。 + ------------------- + | Tables_in_test_db | + - + ----------------- | tb_deptment1 | + ------------------- + 1行における SET(0.00秒)
2.2フィールドのデータ型を変更
構文規則は次の通りされている: ALTER TABLEテーブルMODIFYフィールド名データ型 テーブル名:フィールドのデータ型テーブルの名前を変更するには、 フィールド名:フィールドのデータ型を変更し、 データの種類:新しいフィールドのデータ型を変更した後。
ALTER TABLE tb_dept1 MODIFY名VARCHAR(30)。
2.3修正フィールド名
構文規則は次の通りです:
新しいフィールド名フィールドの古い名前新しいデータ型ALTER TABLEテーブル名の変更を。
2.4の追加フィールド
次のような構文規則は次のとおりです。 ALTER TABLEテーブル名が新しいフィールドに新しい名前を追加するデータ型の制約[FIRST | AFTER既存のフィールド名]、 FIRSTおよびAFTERオプションです。 FIRST:テーブルの最初のフィールドに新しいフィールドを追加します。 AFTER:指定に新しく追加された追加フィールドの「既存のフィールド名」バック。
#整合性制約せずにフィールドを追加 ALTER TABLE ADDは、INT(10マネージャーID tb_dept1 ); #追加整合性制約フィールド ALTER TABLEは、ADDメモVARCHAR(50)tb_dept1 ないヌル; #は、表の最初の列のフィールドの追加 ALTER TABLEをINTのtb_dept1(10 COLUMN1 ADD ;)FIRST #は、指定リストの後にフィールドを追加する ALTER TABLE tb_dept1のADDのCOLUMN2のINT(10 )ALTER名。
2.5削除フィールド
次のような構文規則は以下のとおりです。
ALTER TABLEテーブルのDROPフィールド名を、
2.6修飾配置位置フィールド
構文は次のとおりです。
ALTER TABLE 1テーブル名フィールドデータ型MODIFY FIRST | AFTER 2フィールド。
2.7変更テーブルのストレージエンジン
構文:
ALTER TABLEテーブル名ENGINEストレージエンジン=名前を変更した後、
2.8削除するには、テーブルの外部キー制約
構文:
ALTER TABLEテーブル名DROP FOREIGN KEY外部キー制約名、
外部キー制約名:制約、後続のキーワード定義テーブル手段パラメータ
03-削除データテーブル
#1、テーブルの削除が関連付けられていない DROP TABLEは、表1、2、...、N-テーブル[IFはEXISTS]を、 例:IF tb_dept1 DROP TABLEはEXISTS、 #2、他のプライマリ・テーブル関連テーブル削除する 外部キーデータを直接の親テーブルを削除した場合のときに連想が、結果は失敗を表示します。 削除する必要がある場合は、それに関連付けられた子テーブルを削除し、親テーブルを削除することができます。 しかし、いくつかのケースでは、あなたは、あなたが親テーブルを削除することができ、あなたは、単一の親テーブルを削除したい場合は、単に外部キーテーブル制約はキャンセル、子テーブルを維持したいことがあります。 親テーブルのIDに関連付けられた子テーブルfk_emp_deptのtb_emptを持つ外部キー制約は、主テーブルのtb_empt2です。 例: DROP tb_emp ALTER TABLE FOREIGN KEYはfk_emp_empt; DROP表tb_empt2と、