#DML言語
/ *
データ操作言語:
挿入:挿入が
変更:更新は
、削除:削除
* /
#まず、INSERT文
#一つの方法:古典的な挿入
/ *
構文:
INSERT INTOテーブル名(列名、...)の値(値1、...);
* /
beautyからSELECT *;
。。#値の1種類は、の型の列と一致または適合するように挿入されて
INTOビューティー(ID、氏名、性別、borndate、電話番号、写真、boyfriend_id)INSERT
VALUES(13 'は、「ドン信義」でありますF '' 1990年4月23日'' 1898888888 」、NULL、2)。
#2列にはNULL値を挿入しなければならないとすることができます。どのように列内のNULL値を挿入することができますか?
#方法:
INSERT INTOビューティー(上記ID、氏名、性別、borndate、電話番号、写真、boyfriend_id)
VALUES(13、 '唐信義'、 '女性'、 '1990年4月23日'、 '1898888888 '、NULL、2) ;
#第二の方法:
INTO美容INSERT(ID、氏名、性別、電話番号)
VALUES(15、 'Nazha'、 'F'、 '1388888888')。
#3列の順序を逆にしてもよい場合に
INSERT INTOビューティー(氏名、性別、ID、電話番号)
VALUES( '新江'、 '女性'、16、 '110')。
#4列の数と値の数は一致していなければなりません
INTO美容INSERT(氏名、性別、ID、電話番号)
VALUES( 'Xiaotongオフ'、 '女性'、17、 '110')。
#5列名を省略することができ、すべての列のデフォルト、およびテーブル内の同じ列内の列の順序と
INTO美容INSERT
VALUES(18で、 '張'、 'M'、NULL、 '119'、 NULL、NULL);
#第二の方法:
/ *
構文:
INSERT INTOテーブル
セットカラム名=値、列名=値、...
* /
INSERT INTO美容
セットID = 19、NAME = '刘涛'、電話= '999'。
#二つの方法の大きなPK★
#1、方法は、複数の行の挿入をサポートするために、第二の方法をサポートしていません
INTO美容INSERT
VALUES(23 1、唐信義'' F '' 1990年4月23日'' 1898888888 'NULL、2である)
、(24'ドン信義2'、 'F'、」1990-4- 23は、 '1898888888'、NULL、2)である
、(25 'ドン信義3'、 'F'、 '1990年4月23日'、 '1898888888 '、NULL、2)。
#2、サブクエリをサポートするための方法は、第2のアプローチは、サポートされていません。
INSERT INTOの美しさ(ID、名前、電話)
26を選択して、 '宋茜'、 '11809866'。
INSERT INTO美しさ(ID、名前、電話が)
IDを選択し、boyname、 '1234567'
少年ID <3 FROM。
#第二に、ステートメントを変更
/ *
1.変更し、単一のテーブル記録★
構文:
更新テーブル
セット列=新しい価値、新しい列=値、...
フィルタ基準。
2. [変更マルチテーブルのレコード[補足]
構文:
SQL92構文:
アップデート別名表1、表2の別名
値列を設定=、...
条件に参加
し、フィルターを、
SQL99構文:
アップデート別名表1
インナー|左|右別名表2に参加する
接続状態に
設定列=値、...
WHEREフィルタ。
* /
#1のレコードは単一テーブルの変更
#事例1:変更は、テーブル名は、女神の電話13899888899の唐の美しさであります
UPDATE美容SET電話= '13899888899'
WHERE NAME LIKE '唐%';
ケース#2:修正男の子のテーブル名のID 2と同様に張、カリスマ10
UPDATE = SETの少年張」をboyname、10 =がusercp
ID = 2;
#2。録音マルチテーブルを変更します
ケース#1:修正zhangwujiガールフレンドの電話番号は114です
BO UPDATE少年
INNERがON bの美を登録しようbo.`id` = b.`boyfriend_id`
SET b.`phone` = '119'、bo.`userCP` = 1000
WHERE bo.`boyName` = '张无忌';
ケース#2:変更女神ノーボーイフレンドのボーイフレンドは、第2として番号が付けられています
UPDATEの男の子はボー
RIGHT ON bo.`id` = b.`boyfriend_id` bの美を登録しよう
SET b.`boyfriend_id` = 2
WHERE bo.`id`はNULLです。
男の子SELECT * FROM。
#第三に、delete文
/ *
方法1:削除
構文:
[]★単一テーブルを削除する1
テーブルフィルタからの削除
2、削除の複数のテーブル[補足]
SQL92構文:
削除別名表1、表2、別名
表1、別名から、表2のエイリアス
ここで接続状態
とフィルタリング条件。
SQL99の構文:
表1別名、表2のエイリアス削除
1別名表から
左| |内部を右接続条件テーブル2上の別名参加
フィルタを。
第二の方法:TRUNCATE
構文:切り捨てテーブルのテーブル名;
* /
#方法:削除
削除#1つのテーブル。
#ケース:9を終了女神に電話番号情報を削除
電話LIKE「%9」beautyから削除します。
美しSELECT * FROM。
#2。複数の表を削除します。
ケース#:メッセージのガールフレンドのzhangwujiを削除
DELETE B
B beautyから
INNERがbo ON b.`boyfriend_id` = bo.`id`男の子を登録しよう
WHERE bo.`boyName` = '张无忌';
ケース#:削除情報黄暁明や情報の彼のガールフレンド
DELETE B、BOが
beautyからB
INNERはb.`boyfriend_id`ボーイズBO = bo.`id` ON JOINの
WHERE bo.`boyName` = '暁明';
#第二の方法:TRUNCATEステートメント
#ケース:カリスマ>神100情報が削除
TRUNCATE TABLEの男の子を、
#DELETE PK切り捨て顔の質問[★]
/ *
条件は、TRUNCATEを追加することはできませんどこ1.deleteを追加することができます
2.truncateは、高効率Diudiu削除
表は、成長しているカラムから除去されなければならない場合3.
DELETE、INSERTデータを削除した場合、ブレークポイントから成長列の値は、、
およびTRUNCATEを削除し、[挿入します最初から成長列の値のデータ。
4.truncate戻り値は削除しないで、戻り値を削除します
5.truncateロールバックすることはできません削除し、削除しますが、ロールバックすることができます。
* /
男の子SELECT * FROM。
男の子FROM DELETE、
TRUNCATE TABLEボーイズ;
INSERT INTO男の子(boyname、usercp)
VALUES( '張'、100)、( '備'、100)、( 'クアン'、100);