Step3 テーブル操作
STEP 3

テーブル操作

サンプルのAccessファイルを使用します。
このページの一番下からDBNew_Sample_Step3.zipをダウンロードして任意の場所で解凍してください。

1. 更新:UPDATE文
UPDATE テーブル名 SET 列名 = 値 WHERE 条件; 

UPDATE 文は、

既に登録されているデータを変更する

ためのSQL文です。

例えば、次のようなデータがあります。
Students(一部)
StudentID Name Grade Class
1 田中 太郎 1 A
2 鈴木 花子 3 B
3 佐藤 健 2 C

(1) クラスを変更する

「佐藤 健」のクラスを C から A に変更します。

UPDATE Students SET Class = 'A' WHERE StudentID = 3; 
各部分の意味
部分 意味
UPDATE Students Studentsテーブルを更新
SET Class = 'A' Class列を A に変更
WHERE StudentID = 3 StudentID が 3 の行だけ
実行後
StudentID Name Grade Class
1 田中 太郎 1 A
2 鈴木 花子 3 B
3 佐藤 健 2 A

(2) 身長を変更する

「田中 太郎」の身長を 162 → 165 に変更します。

UPDATE Students SET Height = 165 WHERE StudentID = 1; 

文字と数値の違い

数値

SET Height = 165

数値は ' ' 不要です。

文字

SET Class = 'A'

文字は ' ' が必要です。

WHERE句が重要

例えば、

UPDATE Students SET Class = 'A'; 

のように WHERE を書かないと

全員の Class が A に変更されます。

これは非常に危険です。

2. 挿入:INSERT文
INSERT INTO テーブル名(フィールド名1,フィールド名2,...)
VALUES(値1,値2,...);

INSERT 文は、

新しいデータをテーブルに追加する

ためのSQL文です。

Studentsテーブルには次のフィールドがあります。
フィールド名 内容
StudentID 生徒ID(オートナンバー)
Name 生徒名
Furigana ふりがな
Grade 学年
Class クラス
Height 身長
ClubID Clubsテーブルの主キー//Step4以降で使用
JHighID JHighsテーブルの主キー//Step4以降で使用
現在、次のようなデータが入っています(01 更新:UPDATE文を実行した場合)。
StudentID Furigana Name Grade Class Height ClubID JHighID
1 田中 太郎 タナカ タロウ, 1 A 165 1 1
2 鈴木 花子 スズキ ハナコ 3 B 170 1 1
3 佐藤 健 サトウ ケン 2 A 158 1 1
4 高橋 愛 タカハシ アイ 1 B 165 1 1
5 伊藤 次郎 イトウ ジロウ 2 A 176 1 1
6 渡辺 美咲 ワタナベ ミサキ 3 C 154 1 1
7 山本 一郎 ヤマモト イチロウ 1 A 180 1 1
8 中村 春菜 ナカムラ ハルナ 2 B 160 1 1

(1) 新しい生徒を追加する

INSERT INTO Students
(Name,Furigana,Grade,Class,Height,ClubID,JHighID)
VALUES
('山田 次郎','ヤマダ ジロウ',1,'A',171,1,1);
StudentID は自動的に採番され、1行追加されます
StudentID Furigana Name Grade Class Height ClubID JHighID
9 山田 次郎 ヤマダ ジロウ 1 A 171 1 1
各部分の意味
部分 意味
INSERT INTO Students Studentsテーブルへ追加
(Name,Furigana, Grade, Class,Height,ClubID,JHighID) データを入れる列
VALUES 値を指定する
('山田 次郎','ヤマダ ジロウ', 1, 'A',171,1,1) 実際に追加する値

列名を省略する書き方

すべての列に値を入れる場合は、

INSERT INTO Students
VALUES
('山田 次郎','ヤマダ ジロウ',1,'A',171,1,1);

のように書くこともできます。

ただし、この方法は、

列の順番を正確に把握している必要があります。

3 .削除:DELETE文
DELETE FROM テーブル名 WHERE 条件; 

DELETE 文は、

テーブル内のデータ(レコード)を削除する

ためのSQL文です。

一般的なSQLでの例

DELETE FROM Students WHERE StudentID = 3; 
各部分の意味
部分 意味
DELETE 削除する
FROM Students Studentsテーブルから
WHERE StudentID = 3 StudentID が 3 の行だけ

StudentIDが3 「佐藤 健」のデータが削除されます。

StudentID Furigana Name Grade Class Height ClubID JHighID
1 田中 太郎 タナカ タロウ, 1 A 165 1 1
2 鈴木 花子 スズキ ハナコ 3 B 170 1 1
4 高橋 愛 タカハシ アイ 1 B 165 1 1
5 伊藤 次郎 イトウ ジロウ 2 A 176 1 1
6 渡辺 美咲 ワタナベ ミサキ 3 C 154 1 1
7 山本 一郎 ヤマモト イチロウ 1 A 180 1 1
8 中村 春菜 ナカムラ ハルナ 2 B 160 1 1
9 山田 次郎 ヤマダ ジロウ 1 A 171 1 1

AccessではDELETE *(アスタリスク) を使うことが多い

DELETE * FROM Students WHERE StudentID = 3; 

最近の Access では、「*(アスタリスク)」が無くても実行できますが、

「*(アスタリスク)」付きを紹介されることが多いです。

WHERE句が無いと全削除

DELETE * FROM Students; 

を実行すると、

Students テーブルの全データが削除されます。

非常に危険です。

オートナンバーは戻らない

例えば StudentID が 1, 2, 3 のとき

3 を削除しても、

次に追加される番号は 4 になります。

Access のオートナンバーは通常戻りません。


ファイル名 サイズ (KB) ダウンロード
DBNew_Sample_Step3.zip 18

戻る


© 2026 - Blazor 情処の味方

サポーターズ
Thread Light
An unhandled error has occurred. Reload 🗙