进销存 设计的表设计,需要哪些表,哪些字段,提供表结构定义
时间: 2024-02-07 11:04:07 浏览: 140
进销存系统的表设计需要考虑到业务的流程和数据的关系,一般需要设计以下表:
1. 商品表(Product):记录商品的基本信息,如商品名称、售价、进价、库存等。
```
CREATE TABLE Product (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
price DECIMAL(10,2) NOT NULL,
cost DECIMAL(10,2) NOT NULL,
stock INT NOT NULL
);
```
2. 客户表(Customer):记录客户的基本信息,如客户名称、联系人、联系方式等。
```
CREATE TABLE Customer (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
contact_name VARCHAR(255) NOT NULL,
contact_phone VARCHAR(20) NOT NULL,
address VARCHAR(255)
);
```
3. 供应商表(Supplier):记录供应商的基本信息,如供应商名称、联系人、联系方式等。
```
CREATE TABLE Supplier (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
contact_name VARCHAR(255) NOT NULL,
contact_phone VARCHAR(20) NOT NULL,
address VARCHAR(255)
);
```
4. 采购表(Purchase):记录采购的基本信息,如采购日期、采购人、采购金额等。
```
CREATE TABLE Purchase (
id INT AUTO_INCREMENT PRIMARY KEY,
purchase_date DATE NOT NULL,
purchaser VARCHAR(255) NOT NULL,
amount DECIMAL(10,2) NOT NULL,
supplier_id INT NOT NULL,
FOREIGN KEY (supplier_id) REFERENCES Supplier(id)
);
```
5. 销售表(Sale):记录销售的基本信息,如销售日期、销售人、销售金额等。
```
CREATE TABLE Sale (
id INT AUTO_INCREMENT PRIMARY KEY,
sale_date DATE NOT NULL,
seller VARCHAR(255) NOT NULL,
amount DECIMAL(10,2) NOT NULL,
customer_id INT NOT NULL,
FOREIGN KEY (customer_id) REFERENCES Customer(id)
);
```
6. 库存变更表(InventoryChange):记录商品库存的变更信息,如采购入库、销售出库等。
```
CREATE TABLE InventoryChange (
id INT AUTO_INCREMENT PRIMARY KEY,
change_date DATE NOT NULL,
product_id INT NOT NULL,
change_type ENUM('IN', 'OUT') NOT NULL,
change_qty INT NOT NULL,
FOREIGN KEY (product_id) REFERENCES Product(id)
);
```
以上是进销存系统的常见表,每个表的字段和数据类型根据实际业务需求进行设计。
阅读全文