OSS Fan ~OSSでLinuxサーバ構築~

このエントリーをはてなブックマークに追加

PostgreSQLでテーブル作成

カテゴリ:OSSセットアップ | ソフトウェア:PostgreSQL | タグ:
最終更新日:2020/12/29 | 公開日:2013/09/09

目次

概要

 PostgreSQLでテーブルを作成します。

構成

サーバ構成

OSバージョン

Red Hat Enterprise Linux 5.9 x86_64

パッケージ一覧

postgresql90-9.0.8-1PGDG.rhel6.x86_64.rpm
postgresql90-libs-9.0.8-1PGDG.rhel6.x86_64.rpm
postgresql90-server-9.0.8-1PGDG.rhel6.x86_64.rpm

手順

テーブルの作成

テーブル作成前の確認

データベースユーザ user1 が所有者のデータベース testdb1 にテーブル tbl1 を作成します。 テーブル作成する前にメタコマンドで現状のテーブル一覧を確認します。 まだテーブルを作成していないので、「リレーションがありません。」と表示されます。

-bash-3.2$ psql -U user1 testdb1
ユーザ user1 のパスワード:  ←データベースユーザ user1 のパスワードを入力
psql (9.0.13)
"help" でヘルプを表示します.

testdb1=> \dt
リレーションがありません。 ←まだデーブルがないのでこう表示される
testdb1=> 

テーブルの作成

 create table文を実行してテーブルを作成します。 作成するのは以下の構成のテーブルです。
※ただし以下の手順ではデータは入りません。
※カラムの下線は主キーを表します。

テーブル tbl1
id
(数値)
name
(文字列)
address
(文字列)
update
(日付・時刻)
1佐藤東京都2013-09-09 12:10:20.000000
2鈴木大阪府2013-09-09 13:20:30.000000
testdb1=> create table tbl1 (
testdb1(>   id int primary key,
testdb1(>   name varchar,
testdb1(>   address varchar,
testdb1(>   update timestamp
testdb1(> );
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "tbl1_pkey" for table "tbl1"
CREATE TABLE
testdb1=> 

 SQLは1行で入力しても良いですし、上記のように複数行に分けて入力しても良いです。 あくまで「;(セミコロン)」までが1つのSQL文として解釈されます。 どちらでも作成されるテーブルは同じですが、入力の際に分かりやすいので、 入力ミスを防ぐためにも適当に改行して入力することをおすすめします。

テーブル作成後の確認

 テーブル作成前と同様にメタコマンドでテーブル一覧を表示します。 作成したテーブル tbl1 が表示されます。

testdb1=> \dt
         リレーションの一覧
 スキーマ | 名前 |    型    | 所有者 
----------+------+----------+--------
 public   | tbl1 | テーブル | user1
(1 行)

testdb1-> \q
-bash-3.2$