データ挿入
INSERTは、挿入またはデータベーステーブルの行に追加するために使用され、挿入は、いくつかの方法に分けることができます
- 完全な行を挿入
- 挿入行の部分
- 複数の行を挿入
- 一部のクエリの結果を挿入します
完全な行を挿入
mysql> INSERT INTO customers VALUES(NULL, 'zhangsan', 'shandong', NULL, NULL, NULL, NULL, '15053631234', '[email protected]');
Query OK, 1 row affected (0.01 sec)
VALUES文で指定されたテーブルの各列のデータに保存されている新規顧客のテーブルを挿入するには、この顧客の例としては、各列の値を指定する必要があります
この構文は非常に単純ですが、それは安全ではありませんが、あなたが利用するのは避けるべき
、あなたがしなければ、時々間違って行くこの場合の具体的な注文情報に強く依存
mysql> INSERT INTO customers(
-> cust_name,
-> cust_address,
-> cust_contact,
-> cust_email
-> )
-> VALUES(
-> 'lisi',
-> 'shandong',
-> '15053631235',
-> '[email protected]');
Query OK, 1 row affected (0.01 sec)
- この例では、まったく同じジョブに以前のINSERT文を完成さ
- 列名を設けているので、値は、必ずしも今各実際のテーブルに従って順にリストされていない、指定された順序で指定された列名と一致する必要があります
- 構造変化テーブルのさえ利点、このINSERT文はまだすることができ、正しい実装
かかわらず、INSERT構文の、正しい数のCALUES与えられなければならない
この構文の指定した列名と値を、あなたはまた、列を省略することができます。これは、あなただけの価値を提供していない他の列に特定の列の値を提供できることを意味します
条件を満たさなければならない列を省略
- カラムがnull値を許可するように定義され、
- デフォルト値(値が指定されていない場合、デフォルト値)テーブルの定義で与えられます
複数の行を挿入
mysql> INSERT INTO customers( cust_name, cust_address, cust_contact, cust_email ) VALUES( 'lisi', 'shandong', '15053631235', '[email protected]'),('wangwu', 'shandong', '15053631236', '[email protected]');
Query OK, 2 rows affected (0.01 sec)
Records: 2 Duplicates: 0 Warnings: 0
前記コンマで区切られたINSERTステートメント複数の値の単一のセット、括弧の対と各値、
データの更新および削除
列を更新
(改変)表のデータを更新するため、UPDATEステートメントを使用する2つの方法のアップデートで使用することができます
- テーブル内の特定の行を更新します。
- テーブル内のすべての行を更新します。
UPDATEステートメントは非常に使いやすいです、基本的なUPDATEステートメントは、3つの部分で構成さ
- テーブルを変更するには
- 列名とその新しい値
- フィルタ条件行を更新OK
CUST_ID 1顧客は、新しい電子メールアドレスを持っているので、彼の記録を更新する必要があります、
mysql> UPDATE customers
-> SET cust_email='[email protected]'
-> WHERE cust_id=1;
Query OK, 1 row affected (0.03 sec)
Rows matched: 1 Changed: 1 Warnings: 0
- UPDATEステートメントは、常に更新されるテーブルの名前で始まります。
- テーブル名は、顧客である更新する必要があり、
- SETサブ文は更新する列に新しい値を割り当てるために使用されます
- WHERE文を更新するために、どの行を決定するために使用されています。何のWHERE句がない場合、すべての行への電子メールアドレスを更新します、これは我々が見たいものではありません
複数の列を更新します
mysql> UPDATE customers SET cust_name='zhangsan1',cust_email='[email protected]' WHERE cust_id=1;
Query OK, 1 row affected (0.03 sec)
Rows matched: 1 Changed: 1 Warnings: 0
コンマなしの最後の後に複数の列、単一のSETコマンド、各「列値=」カンマ区切り使用する前に、更新時
データを削除します。
テーブルからデータを削除するには、DELETEステートメントを使用し、2つの方法で使用することができます
- テーブルから特定の行を削除します
- テーブルからすべての行を削除します。
前述したように、使用して削除するには、非常に使いやすい簡単にUPDATE
次の文は、顧客テーブルから行を削除します
mysql> DELETE FROM customers
-> WHERE cust_id=3;
Query OK, 1 row affected (0.03 sec)
この文は、WHERE句は行を削除するWHEREフィルタリング、テーブル名からデータを削除するよう求めFROM .DELETEを理解するのは簡単です、
この例では、唯一のあなたはWHERE句を省略した場合、彼はテーブルを削除します、3のクライアントIDを削除各顧客