テーブルの作成とデータの登録

Step1 : テーブルの作成


1. まずはpgAdmin4を起動させ、サーバーに接続し、すでに作成してあるデータベース【lesson_db】を選択します。
※まだデータベースを作成していない方や、サーバーの接続方法を忘れてしまった方は
PostgreSQLとpgAdmin4の導入 から確認しましょう。

※もしパスワードを問われたら postgres と入力しましょう!

2.「lesson_db」を選択して右クリック。
メニューバーにあるクエリツールをクリックして、SQL実行用のウィンドウを開きます。

3. 下記SQLをコピー、SQL実行用のウィンドウに貼り付けたら 【雷マーク】 をクリックして、クエリを実行します。

◆以下のSQL文を貼り付けて、実行してください。

CREATE TABLE Staff(Id CHAR(4) NOT NULL,Name  VARCHAR(50) NOT NULL,Entrance_year  INTEGER,Section  VARCHAR(30),CONSTRAINT pk_staff PRIMARY KEY(Id))
;
CREATE TABLE Area(AreaCode  CHAR(2) NOT NULL,AreaName  VARCHAR(20) NOT NULL,CONSTRAINT pk_area PRIMARY KEY(AreaCode))
;
CREATE TABLE Shop(ShopCode CHAR(3) NOT NULL,ShopName VARCHAR(50) NOT NULL,ShopNameAbc VARCHAR(50) NOT NULL,AreaCode CHAR(2) NOT NULL,UpdateDate DATE NOT NULL,CONSTRAINT pk_shop PRIMARY KEY(ShopCode),CONSTRAINT fk_areacode FOREIGN KEY(AreaCode) REFERENCES Area(AreaCode))
;
CREATE TABLE Goods(GoodsCode CHAR(4) NOT NULL,GoodsName VARCHAR(50) NOT NULL,UnitPrice INTEGER default 0,UpdateDate DATE NOT NULL,CONSTRAINT pk_goods PRIMARY KEY(GoodsCode))
;
CREATE TABLE Stocks(GoodsCode CHAR(4) NOT NULL,ShopCode CHAR(3) NOT NULL,Quantity INTEGER default 0,UpdateDate DATE NOT NULL,CONSTRAINT pk_stocks PRIMARY KEY(GoodsCode, ShopCode),CONSTRAINT fk_goodscode FOREIGN KEY(GoodsCode) REFERENCES Goods(GoodsCode),CONSTRAINT fk_shopcode FOREIGN KEY(ShopCode) REFERENCES Shop(ShopCode))
;
CREATE TABLE Purchaser(PurchaserCode CHAR(4) NOT NULL,PurchaserName VARCHAR(50) NOT NULL,Address VARCHAR(100) NOT NULL,Telephone VARCHAR(15),CONSTRAINT pk_purchaser PRIMARY KEY(PurchaserCode))
;
CREATE TABLE Order_Header(OrderNo INTEGER NOT NULL,PurchaserCode CHAR(4) NOT NULL,ShopCode CHAR(3) NOT NULL,OrderTimestamp Date NOT NULL,Total INTEGER,CONSTRAINT pk_order_header PRIMARY KEY(OrderNo),CONSTRAINT fk_purchasercode FOREIGN KEY(PurchaserCode) REFERENCES Purchaser(PurchaserCode))
;
CREATE TABLE Order_Detail(OrderNo INTEGER NOT NULL,DetailNo INTEGER NOT NULL,GoodsCode CHAR(4) NOT NULL,Quantity INTEGER NOT NULL,SubTotal INTEGER,CONSTRAINT pk_order_detail PRIMARY KEY(OrderNo, DetailNo),CONSTRAINT fk_order_header FOREIGN KEY(OrderNo) REFERENCES Order_header(OrderNo),CONSTRAINT fk_goodscodeorder FOREIGN KEY(GoodsCode) REFERENCES Goods(GoodsCode))
;
commit
;

Step2 : テーブルの確認


1.【lesson_db】の階層を展開していきます。

2.【テーブル】という項目まで展開していきます。

3.画像だと9項目ありますが、みなさんは8項目あれば、無事にテーブルは作成されています。


補足
CREATE文が成功したのにもかかわらず、もしテーブルが表示されない場合は、
【 再読み込み】 させたほうがいいかも!たまーに更新しないと表示されない場合があります。
lesson_db の上で右クリックをして【再読み込み】 をクリック。

Step3 : データの登録


1.テーブルの作成時と同様にデータベース【lesson_db】に対してクエリツール起動します。

2.下記SQLをコピー、テーブル作成時と同様に上部のSQL実行用のウィンドウに貼り付けたら【雷マーク】をクリックしてクエリを実行します。

◆以下のSQL文を貼り付けて、実行してください。

INSERT INTO Staff VALUES('0001','鈴木一郎',1995,'人事部')
;
INSERT INTO Staff VALUES('0002','鈴木次郎',1995,'経理部')
;
INSERT INTO Staff VALUES('0003','田中健一',1995,'営業部')
;
INSERT INTO Staff VALUES('0004','佐藤健二',1999,'総務部')
;
INSERT INTO Staff VALUES('0005','雪村花子',2000,'経理部')
;
INSERT INTO Staff VALUES('0006','草野由紀',2003,'営業部')
;
INSERT INTO Staff VALUES('9999','テスト',NULL,NULL)
;
INSERT INTO Area VALUES('01','北海道')
;
INSERT INTO Area VALUES('02','東北')
;
INSERT INTO Area VALUES('03','信越')
;
INSERT INTO Area VALUES('04','関東')
;
INSERT INTO Area VALUES('05','北陸')
;
INSERT INTO Area VALUES('06','東海')
;
INSERT INTO Area VALUES('07','近畿')
;
INSERT INTO Area VALUES('08','中国')
;
INSERT INTO Area VALUES('09','四国')
;
INSERT INTO Area VALUES('10','九州')
;
INSERT INTO Area VALUES('11','沖縄')
;
INSERT INTO Area VALUES('12','海外')
;
INSERT INTO Shop VALUES('001','新宿','SHINJUKU','04', '2000-01-01')
;
INSERT INTO Shop VALUES('002','横浜','YOKOHAMA','04', '2003-04-01')
;
INSERT INTO Shop VALUES('003','福岡','FUKUOKA','10', '2005-08-10')
;
INSERT INTO Shop VALUES('004','松山','MATSUYAMA','09', '2005-08-10')
;
INSERT INTO Shop VALUES('005','ロンドン','LONDON','12', '2005-12-31')
;
INSERT INTO Goods VALUES('1001','ベスト','7800', '2004-09-15')
;
INSERT INTO Goods VALUES('1002','セーター','12800', '2003-03-30')
;
INSERT INTO Goods VALUES('1003','ボレロ','5500', '2004-09-15')
;
INSERT INTO Goods VALUES('2001','パイロット帽','4000', '2000-01-01')
;
INSERT INTO Goods VALUES('2002','とんがり帽','3000', '2000-01-01')
;
INSERT INTO Goods VALUES('3001','手袋','2000', '2000-10-30')
;
INSERT INTO Goods VALUES('3002','手袋(指なし)','2000', '2000-10-30')
;
INSERT INTO Stocks VALUES('1001','001',20, current_date)
;
INSERT INTO Stocks VALUES('1002','001',25, current_date)
;
INSERT INTO Stocks VALUES('1003','001',10, current_date)
;
INSERT INTO Stocks VALUES('2001','002',5, current_date)
;
INSERT INTO Stocks VALUES('2002','002',12, current_date)
;
INSERT INTO Stocks VALUES('1002','002',14, current_date)
;
INSERT INTO Stocks VALUES('2001','003',2, current_date)
;
INSERT INTO Stocks VALUES('2002','003',1, current_date)
;
INSERT INTO Stocks VALUES('3001','003',18, current_date)
;
INSERT INTO Stocks VALUES('3002','003',9, current_date)
;
INSERT INTO Stocks VALUES('1001','005',5, current_date)
;
INSERT INTO Stocks VALUES('1002','005',0, current_date)
;
INSERT INTO Stocks VALUES('1003','005',30, current_date)
;
INSERT INTO Stocks VALUES('3001','005',22, current_date)
;
INSERT INTO Stocks VALUES('3002','005',10, current_date)
;
INSERT INTO Purchaser VALUES('0501','辛順勲','東京都新宿区','0300000000')
;
INSERT INTO Purchaser VALUES('0502','太宰満天','大分県別府市','0890000000')
;
INSERT INTO Purchaser VALUES('0503','豊臣秀子','神奈川県小田原市','0480000000')
;
INSERT INTO Purchaser VALUES('0504','John Devon','Buckingham Palace Road London','02073212233')
;
INSERT INTO Purchaser VALUES('0505','瀬田茅','東京都世田谷区','0330000000')
;
INSERT INTO Order_Header VALUES(420,'0504','005',TO_DATE('2000-05-23','YYYY-MM-DD'),4000)
;
INSERT INTO Order_Header VALUES(421,'0505','001',TO_DATE('2005-01-31','YYYY-MM-DD'),12800)
;
INSERT INTO Order_Header VALUES(422,'0501','002',TO_DATE('2005-02-06','YYYY-MM-DD'),8000)
;
INSERT INTO Order_Header VALUES(423,'0505','002',TO_DATE('2005-04-01','YYYY-MM-DD'),9500)
;
INSERT INTO Order_detail VALUES(420,1,'3001',1,2000)
;
INSERT INTO Order_detail VALUES(420,2,'3002',1,2000)
;
INSERT INTO Order_detail VALUES(421,1,'1002',1,12800)
;
INSERT INTO Order_detail VALUES(422,1,'2001',2,8000)
;
INSERT INTO Order_detail VALUES(423,1,'1003',2,5500)
;
INSERT INTO Order_detail VALUES(423,2,'2001',2,4000)
;
commit
;

Step4 : データの確認


1.Step3で実行した文章をすべて削除して select * from 【テーブル名】 で全てのテーブルを確認して行きます。

試しに、 select * from staff と入力して【雷マーク】をクリックしてクエリを実行してみましょう。
上記の通りにデータが表示されていればしっかりとデータが登録できています。

同じ要領で、合計 8個 のテーブルを確認して行きましょう。
area , goods , order_detail , order_header , purchaser , shop , staff , stocks

全てのテーブルで、データが表示されれば、データの確認は以上となります。

これでデータベースの準備はOKです。課題を進めて行きましょう!

カテゴリー

アーカイブ

Close Bitnami banner
Bitnami