データ定義言語(データ定義言語)基本操作
声明、DROPステートメントをALTER、CREATE文を含むデータベース、テーブルなどの定義。などのデータベース、データシート、テーブルの定義を変更するALTERステートメントを作成、データベースを削除するステートメントをDROP、テーブルを削除するステートメントをCREATEなど
#表示すべてのデータベース名: ショーデータベース、 データベースを切り替えるには#;テスト・データベースへのスイッチ: 使用INFORMATION_SCHEMA; #表示は、すべてのテーブルが: ;テーブルを表示 コンテンツの#照会テーブル: SELECT * から CHARACTER_SETS。
データベースDDLの第二に、操作
2.1データベースの作成
CREATE 、ライブラリ名のCHARSET文字セットDATABASES
#仕様:一般的なキーワードの大文字、小文字のライブラリ名、UTF8文字セットを使用
CREATE DATABASE TESTDB文字セットUTF8を;
#は、データがすでに存在する場合、それは文句を言うでしょう、データベースに存在しません 作成 、データベース、学生が
何がある#場合作成し、そこに作成されていません! 作成 データベース のIF ない EXISTS 学生。
ケースパラメータを無視:あなたはケース(すべて小文字)を無視MySQLを設定することができ、前提を設定し、データベースを追加することを計画しています。プラス後者はあまり使用大文字ライブラリにつながる可能性があります。
変数は、表示のように 「%低い%」;
#1は、小資本を無視し、値に設定されて はlower_case_table_names = 1
2.2データベースを削除します。
DATABASE DROP 学生;
があれば#削除し、何の削除はありません ドロップ データベースは、 IF EXISTS 学生;
#はtest999という名前のデータベースを削除します。データベースが存在しない場合は、存在しないデータベース文句を言う のドロップ データベースの学生。
2.3データベース・キャラクタ・セットを変更します
注意:変更された文字セットは、元の完全なスーパーセットでなければなりません。リスクを修正し、エンコードの不一致が文字化け。
ALTER DATABASE 学生 CHARSETのutf8mb4を。
表の第三に、定義DDL
テーブルを作成する3.1構文
ヘルプ作成 表を、 表を作成します。CREATE TABLEのテーブル名 ( フィールド名1を、データタイプ[ 整合性制約] 、 フィールド名2、データ型[ 整合性制約] 、 ... フィールド名nを、データ型[ 整合性制約条件] )。
3.2データ型
数値型
日付と時刻タイプ
文字列型
3.3制約
PRIMARY KEYの #は、主キーが一意に対応するレコードを識別する制約 foreing KEY #外部キー制約を NOT NULL#が制約-null UNIQUE#一意性制約 DEFAULT フィールドを設定するために、デフォルトの#デフォルトの制約を
3.4例
使用; WebDBの - ;のDROP TABLE T1の CREATE TABLE T1(ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT ' 学生ID ' 、 NAME VARCHAR(20)NOT NULLに COMMENT ' 学生名' 、 年齢TINYINT COMMENT ' 学生時代' 、 性別ENUMに(' M '、' F ')、NOT NULL DEFAULT "M ' COMMENT ' 学生のセックス' 誕生日DATETIME DEFAULT NOW()COMMENT ' 学校の時間' telnum VARCHAR(12)NOT NULL UNIQUE COMMENT ' 電話番号");
表3.5および表ビューの構造
#は、すべてのテーブルが表示 TABLESを示し; #t1がテーブル構造を参照 DESCの T1を、
#は、create table文ビュー
ショーはテーブルt1を作成します。
3.7テーブル名を変更
#frist_gradeテーブルT1の名前変更
ALTER TABLEが RENAMEのfrist_gradeをt1の。
3.8フィールド名を変更
#フィールド名変更ALTER TABLEの新しいフィールド名フィールドの新しいデータ型のテーブル名の変更古い名前を、 ALTER TABLEは、 CHANGE誕生日BIRのfrist_grade 日時に DEFAULT CURRENT_TIMESTAMP COMMENT 「学校の時間を」 ;
3.9フィールドタイプを変更します
#のデータタイプフィールド変更のALTER TABLEのテーブル名MODFIYフィールド名データ型を、
#名の長さ30を変更する ALTER TABLEは、 MODIFY NAME frist_grade VARCHAR(30)。
3.10は、フィールドを追加します。
#フィールドを追加ALTER TABLEのテーブル名ADD 新しいフィールド名データ型を、 #行をテーブルの端に ALTER 表 frist_grade ADD微信VARCHAR(20である)NOT NULL 、UNIQUE ; #指定された場所は、誕生日の後にリストされた電子メールに列を追加する ALTERの 表 frist_gradeをADDメールでVARCHAR(50)NOT NULL 誕生日AFTER; idcard最初の列位位置は、カラムが追加された ALTER TABLEが frist_grade ADDの idcard VARCHAR(20です)はありません NULL FIRST;
3.11削除]フィールド列
あなたが列を削除する場合、この列は、元のデータをすべてクリアし、慎重に検討してください、と開発者が繰り返し確認しました。前にバックアップを削除するには
#フィールドに削除のALTER TABLEのテーブルのDROPのフィールド名を、 ALTER TABLEは frist_grade DROP趣味。
3.12削除テーブル
DROP TABLEの frist_gradeを。