データの変更
 
このページをシェアする                  
データの変更
この章では、以下の項目について説明します。
データ変更の概要
テーブルの変更
デフォルト値の設定
UPDATE ステートメントの使用
データ変更の概要
データベースを作成した後、以下のようにデータベースを変更できます。
テーブルを作成した後、テーブル定義を変更できます。
列を作成した後、オプションの列属性を設定できます。
データベースにデータを追加した後、データを変更できます。
SQL Data Manager を使用してこれらのタスクを実行できます。対話型アプリケーションの詳細については、『PSQL User's Guide』を参照してください。SQL ステートメントの詳細については、『SQL Engine Reference』を参照してください。
テーブルの変更
テーブルの作成後にテーブル定義を変更するには、ALTER TABLE ステートメントを使用します。ALTER TABLE ステートメントでは、列の追加と削除、主キーおよび外部キーの追加と削除、テーブルのデータ ファイルのパス名の変更を行うことができます。
次の例は、サンプル データベースの Tuition テーブルに Emergency_Phone という数値型の列を追加します。
ALTER TABLE Tuition ADD Emergency_Phone NUMERIC(10,0)#
列の詳細については、第 14データの挿入と削除を参照してください。主キーと外部キーの詳細については、第 18データの管理を参照してください。
デフォルト値の設定
行を挿入しても列に値を指定しないと、PSQL がデフォルト値を挿入します。デフォルト値は、各行の列に有効な値が確実に入るようにします。
サンプル データベースの Person テーブルでは、すべての学生は同一の州内に住んでいます。State 列に TX などのデフォルト値を設定することにより、その列に対し最も可能性の高い値が常に入力されるようにします。
列のデフォルト値を設定するには、CREATE TABLE ステートメントで DEFAULT ステートメントを使用します。
CREATE TABLE MyTable(c1 CHAR(3) DEFAULT 'TX', ID INTEGER)#
SELECT * FROM MyTable#
SELECT ステートメントの結果
"c1", "ID"
"TX", "1234"
2 列から 1 行フェッチされました。
UPDATE ステートメントの使用
既にテーブル内に存在する行の中のデータを変更するには、UPDATE ステートメントを使用します。UPDATE ステートメントでは、行の特定の列を変更できます。また、UPDATE ステートメントの WHERE 句を使用して、PSQL がどの行を変更するかを指定できます。これを検索更新(Searched Update)と呼びます。SQL で宣言されたカーソルと位置付け UPDATE ステートメントを使用して、データをフェッチする宣言済みカーソルの現在の行を更新できます。
UPDATE Course
SET Credit_Hours = 4
WHERE Course.Name = 'Math'#
この例では、Math というコース名を含む行を検索し、Credit Hours 列の値を 4 に変更するよう PSQL に指示しています。
前の例で示されているように、UPDATE ステートメントの SET 句の右側に定数を置くことによって、列を更新できます。