logo icon
ธนินัชดอทคอม - รับสร้าง Website, Mobile Application
image

บทความ

ธนินัช ดอทคอม - ผู้เชี่ยวชาญทำเว็บไซต์

การออกแบบฐานข้อมูล POS โดยทั่วไปแล้วมักจะมี Table ข้อมูลต่อไปนี้

การออกแบบฐานข้อมูล POS ต้องพิจารณาความต้องการของธุรกิจและร้านค้าเพื่อให้ฐานข้อมูลมีความสอดคล้องและเหมาะสมกับการทำงานของ POS ได้ดีที่สุด โดยโครงสร้างของฐานข้อมูล POS สามารถออกแบบได้หลายแบบ แต่โดยทั่วไปแล้วมักจะมี Table หรือตารางฐานข้อมูลต่อไปนี้:

  1. ตารางสินค้า (Products) - เก็บข้อมูลสินค้า ได้แก่ ชื่อสินค้า, ราคา, ประเภทสินค้า, จำนวนสินค้าในสต็อก, วันที่สร้างสินค้า, วันที่แก้ไขสินค้า ฯลฯ

  2. ตารางลูกค้า (Customers) - เก็บข้อมูลลูกค้า ได้แก่ ชื่อลูกค้า, ที่อยู่, เบอร์โทรศัพท์, อีเมล, วันเกิด, วันที่ลงทะเบียนลูกค้า ฯลฯ

  3. ตารางการขาย (Sales) - เก็บข้อมูลการขาย ได้แก่ รหัสการขาย, วันที่ขาย, รายการสินค้า, ราคารวม, จำนวนสินค้า, ลูกค้าที่ซื้อ, วันที่บันทึกการขาย ฯลฯ

  4. ตารางพนักงาน (Employees) - เก็บข้อมูลพนักงาน ได้แก่ ชื่อ-นามสกุล, เลขบัตรประจำตัวประชาชน, ตำแหน่งงาน, เบอร์โทรศัพท์, อีเมล, วันที่เริ่มทำงาน ฯลฯ

  5. ตารางการชำระเงิน (Payments) - เก็บข้อมูลการชำระเงิน ได้แก่ รหัสการชำระเงิน, วันที่ชำระเงิน, จำนวนเงิน, วิธีการชำระเงิน 

 

ตาราง Product Table:

Field Name Data Type Description
product_id INT รหัสสินค้า (Primary Key)
name VARCHAR ชื่อสินค้า
price DECIMAL ราคาสินค้า
quantity INT ปริมาณคงเหลือของสินค้า
category VARCHAR ประเภทสินค้า


ตัวอย่างข้อมูลในตาราง Product Table:

product_id name price quantity category
1 กาแฟเย็น 50.00 20 เครื่องดื่ม
2 ซีบราวนี่ 40.00 15 ขนมปัง
3 แฮมเบอร์เกอร์ 80.00 10 อาหารจานหลัก
4 ส้มตำไทย 60.00 18 อาหารจานด่วน


ตาราง Customer Table:

Field Name Data Type Description
customer_id INT รหัสลูกค้า (Primary Key)
name VARCHAR ชื่อลูกค้า
address VARCHAR ที่อยู่ลูกค้า
phone_number VARCHAR หมายเลขโทรศัพท์ลูกค้า
email VARCHAR อีเมลล์ลูกค้า


ตัวอย่างข้อมูลในตาราง Customer Table:

customer_id name address phone_number email
1 นายสมชาย 55/5 ถนนประชาอุทิศ 089-123-4567 somchai@gmail.com
2 นางสมหญิง 123/4 ถนนเพชรเกษม 082-345-6789 somying@hotmail.com
3 นายสมหมาย 789/2 ถนนสุขุมวิท 085-678-1234 sommai@gmail.com


ตาราง Sales Table:

Field Name Data Type Description
sale_id INT รหัสการขาย (Primary Key)
customer_id INT รหัสลูกค้า (Foreign Key)
employee_id INT รหัสพนักงานที่ทำการขา

 

นี่คือ SQL สำหรับสร้างตาราง Product และแทรกข้อมูลเบื้องต้น:

 
CREATE TABLE Product ( ProductID INT PRIMARY KEY, ProductName VARCHAR(255), ProductDescription VARCHAR(255), ProductPrice DECIMAL(10,2), ProductQuantity INT );

INSERT INTO Product (ProductID, ProductName, ProductDescription, ProductPrice, ProductQuantity) VALUES (1, 'T-Shirt', 'ยี่ห้อ X ไซส์ M', 500, 50), (2, 'Jeans', 'ยี่ห้อ Y ไซส์ L', 1000, 30), (3, 'Sneakers', 'ยี่ห้อ Z ไซส์ 42', 2000, 20);

ในตัวอย่างนี้ เราได้สร้างตาราง Product โดยมี ProductID เป็น Primary Key และคอลัมน์อื่น ๆ ที่เกี่ยวข้องกับสินค้า เช่น ProductName, ProductDescription, ProductPrice และ ProductQuantity.

จากนั้น เราใช้คำสั่ง INSERT INTO ในการเพิ่มข้อมูลสินค้าลงในตาราง Product โดยกำหนดค่าให้กับ ProductID, ProductName, ProductDescription, ProductPrice และ ProductQuantity ตามลำดับ จากนั้นเราก็ใช้ VALUES ในการกำหนดข้อมูลให้กับแต่ละคอลัมน์ในแต่ละแถว โดยคั่นคอลัมน์ด้วยเครื่องหมายจุลภาค (,) และแถวด้วยคำสั่ง (,).

หากต้องการแทรกข้อมูลสินค้าเพิ่มเติมในตาราง Product เราสามารถใช้คำสั่ง INSERT INTO อีกครั้งโดยระบุค่าใหม่ใน VALUES ตามลำดับของคอลัมน์ในตารางได้ โดยจะต้องระบุ Primary Key ที่ไม่ซ้ำกับข้อมูลที่มีอยู่แล้วในตาราง Product เพื่อป้องกันการเพิ่มข้อมูลซ้ำกัน ซึ่งอาจจะเป็นข้อผิดพลาดในการออกแบบฐานข้อมูล.

 

นี่คือ SQL สำหรับสร้างตาราง Customer และแทรกข้อมูลเบื้องต้น:

 
CREATE TABLE Customer ( CustomerID INT PRIMARY KEY, CustomerName VARCHAR(255), CustomerAddress VARCHAR(255), CustomerPhone VARCHAR(20) );

INSERT INTO Customer (CustomerID, CustomerName, CustomerAddress, CustomerPhone) VALUES (1, 'สมชาย', '123 ถนนสุขุมวิท', '089-123-4567'), (2, 'สมหญิง', '456 ถนนพหลโยธิน', '082-345-6789');

ในตัวอย่างนี้ เราได้สร้างตาราง Customer โดยมี CustomerID เป็น Primary Key และคอลัมน์อื่น ๆ ที่เกี่ยวข้องกับลูกค้า เช่น CustomerName, CustomerAddress และ CustomerPhone.

จากนั้น เราใช้คำสั่ง INSERT INTO ในการเพิ่มข้อมูลลูกค้าลงในตาราง Customer โดยกำหนดค่าให้กับ CustomerID, CustomerName, CustomerAddress และ CustomerPhone ตามลำดับ จากนั้นเราก็ใช้ VALUES ในการกำหนดข้อมูลให้กับแต่ละคอลัมน์ในแต่ละแถว โดยคั่นคอลัมน์ด้วยเครื่องหมายจุลภาค (,) และแถวด้วยคำสั่ง (,).

หากต้องการแทรกข้อมูลลูกค้าเพิ่มเติมในตาราง Customer เราสามารถใช้คำสั่ง INSERT INTO อีกครั้งโดยระบุค่าใหม่ใน VALUES ตามลำดับของคอลัมน์ในตารางได้ โดยจะต้องระบุ Primary Key ที่ไม่ซ้ำกับข้อมูลที่มีอยู่แล้วในตาราง Customer เพื่อป้องกันการเพิ่มข้อมูลซ้ำกัน ซึ่งอาจจะเป็นข้อผิดพลาดในการออกแบบฐานข้อมูล.

นี่คือ SQL สำหรับสร้างตาราง Sales และแทรกข้อมูลเบื้องต้น:

 
CREATE TABLE Sales ( SalesID INT PRIMARY KEY, SalesDate DATE, EmployeeID INT, CustomerID INT, TotalPrice DECIMAL(10,2), FOREIGN KEY (EmployeeID) REFERENCES Employee(EmployeeID), FOREIGN KEY (CustomerID) REFERENCES Customer(CustomerID) );

INSERT INTO Sales (SalesID, SalesDate, EmployeeID, CustomerID, TotalPrice) VALUES (1, '2022-03-29', 101, 1, 1500), (2, '2022-03-30', 102, 2, 3000);

ในตัวอย่างนี้ เราได้สร้างตาราง Sales โดยมี SalesID เป็น Primary Key และ EmployeeID กับ CustomerID เป็น Foreign Key ที่อ้างอิงจากตาราง Employee และ Customer ตามลำดับ โดยคอลัมน์ TotalPrice เป็นคอลัมน์ที่เก็บข้อมูลจำนวนเงินรวมของการขาย.

และเพิ่มข้อมูลการขายในตารางด้วยคำสั่ง INSERT INTO โดยกำหนดค่าให้กับ SalesID, SalesDate, EmployeeID, CustomerID และ TotalPrice ตามลำดับ จากนั้นเราก็ใช้ VALUES ในการกำหนดข้อมูลให้กับแต่ละคอลัมน์ในแต่ละแถว โดยคั่นคอลัมน์ด้วยเครื่องหมายจุลภาค (,) และแถวด้วยคำสั่ง (,).

หากต้องการแทรกข้อมูลในตาราง Sales เพิ่มเติม เราสามารถใช้คำสั่ง INSERT INTO อีกครั้งโดยระบุค่าใหม่ใน VALUES ตามลำดับของคอลัมน์ในตารางได้ โดยจะต้องระบุ Primary Key ที่ไม่ซ้ำกับข้อมูลที่มีอยู่แล้วในตาราง Sales เพื่อป้องกันการเพิ่มข้อมูลซ้ำกัน ซึ่งอาจจะเป็นข้อผิดพลาดในการออกแบบฐานข้อมูล.

 

นี่คือ SQL สำหรับสร้างตาราง Employee และแทรกข้อมูลเบื้องต้น:

 
CREATE TABLE Employee ( EmployeeID INT PRIMARY KEY, EmployeeName VARCHAR(255), EmployeeAddress VARCHAR(255), EmployeePhone VARCHAR(20), EmployeeEmail VARCHAR(255), EmployeeSalary DECIMAL(10,2) );

INSERT INTO Employee (EmployeeID, EmployeeName, EmployeeAddress, EmployeePhone, EmployeeEmail, EmployeeSalary) VALUES (101, 'สมพงษ์', '123 ถนนสุขุมวิท', '089-123-4567', 'sompong@example.com', 20000), (102, 'สมศักดิ์', '456 ถนนพหลโยธิน', '082-345-6789', 'somssak@example.com', 25000);

ในตัวอย่างนี้ เราได้สร้างตาราง Employee โดยมี EmployeeID เป็น Primary Key และคอลัมน์อื่น ๆ ที่เกี่ยวข้องกับพนักงาน เช่น EmployeeName, EmployeeAddress, EmployeePhone, EmployeeEmail และ EmployeeSalary.

จากนั้น เราใช้คำสั่ง INSERT INTO ในการเพิ่มข้อมูลพนักงานลงในตาราง Employee โดยกำหนดค่าให้กับ EmployeeID, EmployeeName, EmployeeAddress, EmployeePhone, EmployeeEmail และ EmployeeSalary ตามลำดับ จากนั้นเราก็ใช้ VALUES ในการกำหนดข้อมูลให้กับแต่ละคอลัมน์ในแต่ละแถว โดยคั่นคอลัมน์ด้วยเครื่องหมายจุลภาค (,) และแถวด้วยคำสั่ง (,).

หากต้องการแทรกข้อมูลพนักงานเพิ่มเติมในตาราง Employee เราสามารถใช้คำสั่ง INSERT INTO อีกครั้งโดยระบุค่าใหม่ใน VALUES ตามลำดับของคอลัมน์ในตารางได้ โดยจะต้องระบุ Primary Key ที่ไม่ซ้ำกับข้อมูลที่มีอยู่แล้วในตาราง Employee เพื่อป้องกันการเพิ่มข้อมูลซ้ำกัน ซึ่งอาจจะเป็นข้อผิดพลาดในการออกแบบฐานข้อมูล.

นี่คือ SQL สำหรับสร้างตาราง Payment และแทรกข้อมูลเบื้องต้น:

 
CREATE TABLE Payment ( PaymentID INT PRIMARY KEY, PaymentType VARCHAR(255), PaymentAmount DECIMAL(10,2), PaymentDate DATE, OrderID INT, FOREIGN KEY (OrderID) REFERENCES Orders(OrderID) );

INSERT INTO Payment (PaymentID, PaymentType, PaymentAmount, PaymentDate, OrderID) VALUES (1, 'เงินสด', 2000, '2023-03-29', 1001), (2, 'บัตรเครดิต', 1500, '2023-03-29', 1002);

ในตัวอย่างนี้ เราได้สร้างตาราง Payment โดยมี PaymentID เป็น Primary Key และคอลัมน์อื่น ๆ ที่เกี่ยวข้องกับการชำระเงิน เช่น PaymentType, PaymentAmount, PaymentDate และ OrderID.

ในตาราง Payment เราได้ใช้ FOREIGN KEY เพื่ออ้างอิงไปยังตาราง Orders โดยอ้างอิงจาก OrderID. นี่คือตัวอย่างการอ้างอิงและการใช้งานความสัมพันธ์ในการออกแบบฐานข้อมูล.

จากนั้น เราใช้คำสั่ง INSERT INTO ในการเพิ่มข้อมูลการชำระเงินลงในตาราง Payment โดยกำหนดค่าให้กับ PaymentID, PaymentType, PaymentAmount, PaymentDate และ OrderID ตามลำดับ โดยในตัวอย่างนี้เรากำหนด PaymentType เป็น 'เงินสด' และ 'บัตรเครดิต' และใช้ค่า OrderID ในการอ้างอิงไปยังข้อมูลในตาราง Orders โดยคำสั่ง REFERENCES.

หากต้องการแทรกข้อมูลการชำระเงินเพิ่มเติมในตาราง Payment เราสามารถใช้คำสั่ง INSERT INTO อีกครั้งโดยระบุค่าใหม่ใน VALUES ตามลำดับของคอลัมน์ในตารางได้ โดยจะต้องระบุ Primary Key ที่ไม่ซ้ำกับข้อมูลที่มีอยู่แล้วในตาราง Payment เพื่อป้องกันการเพิ่มข้อมูลซ้ำกัน

เลือกโปรทำเว็บ เดือนมีนาคม

หนังสือพัฒนาตัวเอง

จุดเริ่มต้นที่ชัดเจน

เว็บไซต์หรือแอปพลิเคชั่นของคุณเริ่มต้นที่นี่

ลงทะเบียนแล้วเราจะส่งข้อเสนอที่ดีที่สุดให้กับคุณ