序文
以前に MySQL —— DDL 操作、つまりデータベースとテーブルの構造に対する操作について学びました。今日は MySQL —— DML 操作、つまりテーブル データに対する操作を共有します。
MySQL DML 操作は次のとおりです。
-
挿入操作 (INSERT): 新しいデータ行をデータベースに挿入するために使用されます。一度に 1 行のデータを挿入することも、1 つの SQL ステートメントを使用して一度に複数行のデータを挿入することもできます。
-
更新操作 (UPDATE): データベース内の既存のデータ行を変更するために使用されます。条件を満たすデータ行を指定した条件に従って更新できます。
-
削除操作 (DELETE): データベースからデータ行を削除するために使用されます。指定した条件に従って、条件に合致したデータ行を削除できます。
データを挿入する
MySQL では、テーブル 1 にデータを挿入する方法が 2 つありますinsert into 表名 values (值1,值2,值3);
。insert into 表名 (列名1,列名2) values (值1,值2);
すべての列を挿入
最初の挿入方法は、すべての列のデータを挿入することでありinsert into 表名 values (值1,值2,值3);
、列のデータは列の位置に対応している必要があります。
create table student(
id int,
name varchar(20),
chinese decimal(3,1),
math decimal(3,1),
english decimal(3,1));
insert into student values(01,'张三',85,95.5,90);
追加するデータが多い場合、1つずつ追加するしかないのでしょうか?もちろん、一度に複数のデータを追加することはできません。各データセットを区切るには、カンマを使用します。
insert into student values(02,'李四',87,97.5,87.5),
(03,'王五',88,90,96);
挿入する列を指定してください
データを挿入するときに、すべての列のデータを挿入する必要がない場合がありますが、挿入する列を指定できます。insert into 表名 (列名1,列名2) values (值1,值2);
insert into student(name,math) values('李华',98);
データが挿入されていない列にはデフォルト値が設定されます。
指定された列の挿入では、複数のデータセットを一度に挿入することもできます。
insert into student(name,chinese) values('小美',96),
('小帅',92);
データを変更する
データを追加した後、追加したデータを変更できます。すべての列のデータを変更します: update 表名 set 列名 值;
、指定された行のデータを変更します:update 表名 set 列名 值 where 条件;
全員の中国語スコアに 3 点を追加します。
update student set chinese = chinese + 3;
張三の中国得点から2点を引く。
update student set english = english - 2 where name = '张三';
データを削除する
MySQL はデータを削除して、データの行を削除します。MySQL でデータを削除するには、主に次の 2 つの方法があります
delete from 表名 [where 条件];
。truncate table 表名 / truncate 表名;
delete from 表名 [where 条件];
データの削除には通常、条件文が続きますwhere
。後続の条件文がない場合はwhere
、テーブル全体が削除されます。
delete from student;
delete from 表名 where 条件;
条件に該当する行データを削除します。
delete from student where name = '小美';
truncate table 表名
;/truncate 表名;
テーブル内のすべてのデータを削除します。これは、データを削除するのとは少し異なります。delete がテーブル内のすべてのデータを削除する場合、単にテーブル内のすべてのデータを削除します。truncate は同様にデータを削除します。テーブルを削除する削除するdrop table 表名
には、データのない空のテーブルを作成します。
truncate table student;
truncate student;