データベース
ここではインストールしたPostgreSQLの基本的なデータベース操作について説明します。 なお、詳細なSQL構文などの説明については割愛します。
psqlを利用して、コマンドラインからデータベースの操作を行います。 スタートメニューから[PostgreSQL] - [SQL Shell(psql)]をクリックします。
コマンドラインが立ち上がります。 サーバ名、データベース名、ポート番号、ユーザ名、エンコーディング方式、パスワードを入力します。 パスワード以外の情報は、括弧内にデフォルト値が表示されています。デフォルトで問題ない場合は 何も入力せずにEnterキーを押すことでデフォルト値が適用されます。
CREATE TABLE構文を使ってデータベースにテーブルを作成します。 CREATE TABLE文の構成は以下のようになります。
CREATE TABLE テーブル名 (列名 データ型, 列名 データ型, ・・・);
では、実際にコマンドラインからCREATE TABLE文を入力してみましょう。 以下のCREATE TABLE文を入力します。SQL文は複数行にまたいで入力することができます。
CREATE TABLE products(
product_no integer,
product_name varchar(40),
price integer
);
テーブルの作成が成功すると、以下のようにCREATE TABLEと表示されます。
このSQL文の意味は、prodocutsという名前のテーブルを作成し、prodocutsテーブルはproduct_no、product_name、priceの3つの列を持ちます。 product_noはinteger型、product_nameはvarchar型、priceはinteger型の値を代入することができます。 各型の説明は以下の表をご参照ください。
| 型 | 説明 |
| char(n) | n文字の固定長文字列 |
| varchar(n) | n文字の可変長文字列 |
| text | TEXT |
| integer | 整数 |
| date | 日付(年月日) |
| time | 時間 |
| boolean | 論理(ブール)値(真/偽) |
上記で作成したproductsテーブルにデータを挿入します。データの挿入にはinsert into文を利用します。 insert into文の構成は以下のようになります。以下のinsert into文を入力します。
INSERT INTO テーブル名 (列名, 列名, ・・・)
VALUES(データ, データ, ・・・);
以下の2つのinsert into文を入力します。
INSERT INTO products (product_no, product_name, price)
VALUES(1, 'cheese', 300);
INSERT INTO products (product_no, product_name, price)
VALUES(2, 'milk', 150);
insertに成功すると、それぞれ以下のようにINSERT 0 1と表示されます。
INSERT文によるデータの挿入以外にも、UPDATE文によるデータの更新、DELETE文によるデータの削除を行うことができます。 詳細についてはこちらをご参照ください。
上記で挿入したデータを参照するためにSELECT文を利用します。 SELECT文の基本的な構文は以下のようになります。
SELECT 列名, 列名, ・・・ FROM テーブル名;
以下のselect文を入力します。
SELECT product_no, product_name, price FROM products;
先ほど挿入した2つのデータが表示されます。
SELECT文にはFROM句の他に、検索条件を指定するWHERE句やグループを行うGROUP BY句などがあります。 詳細についてはこちらをご参照ください。