SQL データの更新

新規データを1件追加する insert

  • 構文
insert into
  テーブル名 (列1, 列2, 列3, ・・・)
values
  (値1, 値2, 値3, ・・・)

注意点:列リストと、values句の値リストは、列数が一致している必要がある

列リストを省略して1件レコードを追加する。

  • values句に列の定義順、カンマ区切りで、値を設定
  • ただし、列を省略するには、条件がある。
  • テーブルの全列に対して、値を指定する必要がある。

行を複数追加する

  • 構文
insert into
  テーブル名 (列1, 列2, 列3, ・・・)
values
  (値1, 値2, 値3, ・・・),
 (値1, 値2, 値3, ・・・),
 (値1, 値2, 値3, ・・・);

MySQL,PostgreSQL, SQL Server, DB2では使用可能。Oracleでは使えない。

レコードの更新 update

  • 構文
update テーブル名 set 列1 = 値1, [列2 = 値2...]
  [where 条件式];

行の削除

  • 構文
delete from テーブル名[where 削除条件];

※注意点

  • deleteで削除したデータは、基本的には元に戻せない。
  • 大量のデータをdeleteする時に予想外に時間が掛かる場合がある。
  • うっかり、where句を指定し忘れると、テーブル全体が削除対象となる。

削除条件にサブクエリを使う

  • delete文を使用
  • 削除条件にサブクエリを使う

MySQL,PostgreSQL, Oracle, SQL Server, では動作する。DB2では動作しない。