วันอาทิตย์ที่ 25 สิงหาคม พ.ศ. 2556

การสร้างตารางที่เป็นแบบ auto run number

ความที่เวลาฝึก Insert in to table ไม่อยากจะใส่เจ้าตัวเลย ID ทั้งหลายแหล่ อยากให้มันรันของมันไปเองเรื่อยๆ
1 2 3 4...... แบบภาพข้างล่าง
     ID จะเป็นค่าว่าง null ไม่ได้ เพราะถ้าใส่ไม่ครบก็จะ Insert ข้อมูลไม่ได้ (บังคับให้เป็น not null) เลยค้นหาวิธี และพึ่งจะรู้ว่ามันต้องสร้าง sequence ขึ้นมาเพื่อ tag ตาราง เฮ้อ Oracle นี้ชอบทำไรยากกว่าชาวบ้านเค้าจริงๆ


 อันนี้ Code ค่ะ ได้มาจากเว็บไซต์ w3school.com ช่างเป็นเว็บไซต์การเรียนรู้ที่เลิศที่สุดในสามโลกค่ะ

CREATE TABLE Customers
(CustomerID int NOT NULL,
CustomerName varchar(255) NOT NULL,
ContactName varchar(255),
Address varchar(255),
City varchar(255),
PostalCode varchar(255),
Country varchar(255),
PRIMARY KEY (CustomerID));
สำหรับ oracle ต้องสร้าง sequence หากต้องการทำการ auto run number ของ IDให้รัน 1 2 3 4......
CREATE SEQUENCE  seq_custom
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 10;
เวลานำข้อมูลเข้าต้องใส่    "ชื่อของsequen.nextval"
INSERT INTO Customers (customerid, CustomerName, 
ContactName, Address, City, PostalCode, Country)
VALUES (seq_custom.nextval,'Cardinal','Tom B. Erichsen',
'Skagen 21','Stavanger','4006','Norway');
***ดิฉันยังไม่ทราบการรัน ID แบบที่ไม่ใช่ตัวเลขอย่างเดียว ถ้าใครผ่านมาแล้วมีวิธีก็โปรดแนะนำด้วยค่ะ

ไม่มีความคิดเห็น:

แสดงความคิดเห็น