ตอนที่ 4 : การสร้าง Table และ Insert เพิ่ม Data ลงใน Table ของ Oracle Database |
ตอนที่ 4 : การสร้าง Table และ Insert เพิ่ม Data ลงใน Table ของ Oracle Database หลังจากที่ได้สร้าง Database และ User พร้อมทั้งการ Grant สิทธิ์ให้กับ User เรียบร้อยแล้ว ขั้นตอนถัดไปในการใช้งาน Database ก็คือการสร้าง Table (ตาราง) สำหรับจัดเก็บรายการข้อมูล ส่วนวิธีการสร้างนั้น ก็ไมได้แตกต่างไปจากวิธีการทั่ว ๆ ไป คือ กำหนดชื่อ Table และรายการ Field หรือ Column และ Data Type ที่ต้องการ ซึ่งวิธีการสร้างนั้นสามารถใช้ผ่าน Tool ของ Oracle SQL Developer ที่สามารถสร้างได้ง่ายสุด ๆ หรือจะเขียนในรูปแบบของ Query ก็ได้เช่นเดียวกัน รวมทั้งวิธีการ Insert ข้อมูลลงใน Table ก็สามารถทำผ่าน Tool ของ Oracle SQL Developer ได้เลย
เปิดโปรแกรม Oracle SQL Developer
คลิกขวาที่ Table -> New Table
ในส่วนนี้ให้ใส่ชื่อ Table และรายการ Field Name (Column) ที่ต้องการ (ปกติแล้ว Oracle Database จะใช้ตัวพิมพ์ใหญ่ทั้งหมด ทั้ง Table และ Field)
รายการ Table และ Field Name ที่ได้
ดับเบิ้ลคลิกที่ Table เพื่อดูรายการคุณสมบัติ โดยเลือกดู Mode ได้เช่น Columns , Data และอื่น ๆ
ในกรณีที่ต้องการเพิ่มข้อมูลให้เลือก Data -> Add (เครื่องหมาย บวก)
หลังจากที่เพิ่ม Data เข้าไปแล้วให้ Commit (เครื่องหมาย ถูก)
ข้อมูลที่ถูกเพิ่มเข้าไปใน Table
ในการสร้าง Table และ Data สามารถรันจาก SQL Query ได้
และในบทความนี้จะมีการสร้าง 3 ตารางคือ CUSTOMER , COUNTRY , AUDIT_LOG
Table : CUSTOMER
CREATE TABLE "CUSTOMER"
( "CUSTOMER_ID" VARCHAR2(4 BYTE) NOT NULL ENABLE,
"NAME" VARCHAR2(50 BYTE),
"EMAIL" VARCHAR2(50 BYTE),
"COUNTRY_CODE" VARCHAR2(2 BYTE),
"BUDGET" NUMBER(18,2),
"USED" NUMBER(18,2),
CONSTRAINT "CUSTOMER_PK" PRIMARY KEY ("CUSTOMER_ID")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 NOCOMPRESS LOGGING
TABLESPACE "SYSTEM" ENABLE
) SEGMENT CREATION DEFERRED
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
TABLESPACE "SYSTEM" ;
INSERT INTO CUSTOMER (CUSTOMER_ID, NAME, EMAIL, COUNTRY_CODE, BUDGET, USED) VALUES ('C001', 'Win Weerachai', '[email protected]', 'TH', 1000000.00, 600000.00);
INSERT INTO CUSTOMER (CUSTOMER_ID, NAME, EMAIL, COUNTRY_CODE, BUDGET, USED) VALUES ('C002', 'John Smith', '[email protected]', 'UK', 2000000.00, 800000.00);
INSERT INTO CUSTOMER (CUSTOMER_ID, NAME, EMAIL, COUNTRY_CODE, BUDGET, USED) VALUES ('C003', 'Jame Born', '[email protected]', 'US', 3000000.00, 600000.00);
INSERT INTO CUSTOMER (CUSTOMER_ID, NAME, EMAIL, COUNTRY_CODE, BUDGET, USED) VALUES ('C004', 'Chalee Angel', '[email protected]', 'US', 4000000.00, 100000.00);
โครงสร้าง Table : CUSTOMER
ข้อมูลของ Table : CUSTOMER
Table : COUNTRY
CREATE TABLE "COUNTRY"
( "COUNTRY_CODE" VARCHAR2(2 BYTE) NOT NULL ENABLE,
"COUNTRY_NAME" VARCHAR2(50 BYTE),
CONSTRAINT "COUNTRY_PK" PRIMARY KEY ("COUNTRY_CODE")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 NOCOMPRESS LOGGING
TABLESPACE "SYSTEM" ENABLE
) SEGMENT CREATION DEFERRED
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
TABLESPACE "SYSTEM" ;
INSERT INTO COUNTRY (COUNTRY_CODE, COUNTRY_NAME) VALUES ('TH', 'Thailand');
INSERT INTO COUNTRY (COUNTRY_CODE, COUNTRY_NAME) VALUES ('UK', 'United Kingdom');
INSERT INTO COUNTRY (COUNTRY_CODE, COUNTRY_NAME) VALUES ('US', 'United States');
โครงสร้าง Table : COUNTRY
ข้อมูลของ Table : COUNTRY
Table : AUDIT_LOG
CREATE TABLE "AUDIT_LOG"
( "AUDIT_ID" NUMBER(*,0) NOT NULL ENABLE,
"CUSTOMER_ID" VARCHAR2(4 BYTE),
"LOG_DATE" DATE,
"USED" NUMBER(18,2),
CONSTRAINT "AUDIT_LOG_PK" PRIMARY KEY ("AUDIT_ID")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 NOCOMPRESS LOGGING
TABLESPACE "SYSTEM" ENABLE
) SEGMENT CREATION DEFERRED
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
TABLESPACE "SYSTEM" ;
INSERT INTO AUDIT_LOG (AUDIT_ID, CUSTOMER_ID,LOG_DATE,USED) VALUES ('1', 'C001', to_date('01-AUG-15','DD-MON-RR'), '100000.00');
INSERT INTO AUDIT_LOG (AUDIT_ID, CUSTOMER_ID,LOG_DATE,USED) VALUES ('2', 'C001', to_date('05-AUG-15','DD-MON-RR'), '200000.00');
INSERT INTO AUDIT_LOG (AUDIT_ID, CUSTOMER_ID,LOG_DATE,USED) VALUES ('3', 'C001', to_date('10-AUG-15','DD-MON-RR'), '300000.00');
INSERT INTO AUDIT_LOG (AUDIT_ID, CUSTOMER_ID,LOG_DATE,USED) VALUES ('4', 'C002', to_date('02-AUG-15','DD-MON-RR'), '400000.00');
INSERT INTO AUDIT_LOG (AUDIT_ID, CUSTOMER_ID,LOG_DATE,USED) VALUES ('5', 'C002', to_date('07-AUG-15','DD-MON-RR'), '100000.00');
INSERT INTO AUDIT_LOG (AUDIT_ID, CUSTOMER_ID,LOG_DATE,USED) VALUES ('6', 'C002', to_date('15-AUG-15','DD-MON-RR'), '300000.00');
INSERT INTO AUDIT_LOG (AUDIT_ID, CUSTOMER_ID,LOG_DATE,USED) VALUES ('7', 'C003', to_date('20-AUG-15','DD-MON-RR'), '400000.00');
INSERT INTO AUDIT_LOG (AUDIT_ID, CUSTOMER_ID,LOG_DATE,USED) VALUES ('8', 'C003', to_date('25-AUG-15','DD-MON-RR'), '200000.00');
INSERT INTO AUDIT_LOG (AUDIT_ID, CUSTOMER_ID,LOG_DATE,USED) VALUES ('9', 'C004', to_date('04-AUG-15','DD-MON-RR'), '100000.00');
โครงสร้าง Table : AUDIT_LOG
ข้อมูลของ Table : AUDIT_LOG
ให้เลือกรัน Query ทั้ง 3 ตาราง เพราะเราจะเอา Table ต่าง ๆ เหล่านี้ไปเขียน Stored Procedure
Oracle Create Table
Oracle Tutorial : การใช้งานฐานข้อมูล Oracle Database Server
|