利用mysql代码建立校园二手交易网站数据库:建立一个数据库,用于存储网站的商品信息、用户信息和订单信息等。
时间: 2023-06-01 18:01:46 浏览: 92
以下是一个简单的校园二手交易网站数据库的建立代码:
-- 创建数据库
CREATE DATABASE campus_market;
-- 使用创建的数据库
USE campus_market;
-- 创建商品信息表
CREATE TABLE goods (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
price DECIMAL(10,2) NOT NULL,
description TEXT,
image_url VARCHAR(255),
seller_id INT(11) NOT NULL,
category_id INT(11) NOT NULL,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id),
FOREIGN KEY (seller_id) REFERENCES users (id),
FOREIGN KEY (category_id) REFERENCES categories (id)
);
-- 创建用户信息表
CREATE TABLE users (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id)
);
-- 创建订单信息表
CREATE TABLE orders (
id INT(11) NOT NULL AUTO_INCREMENT,
buyer_id INT(11) NOT NULL,
seller_id INT(11) NOT NULL,
goods_id INT(11) NOT NULL,
price DECIMAL(10,2) NOT NULL,
quantity INT(11) NOT NULL DEFAULT 1,
status ENUM('created', 'paid', 'shipped', 'received') NOT NULL DEFAULT 'created',
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id),
FOREIGN KEY (buyer_id) REFERENCES users (id),
FOREIGN KEY (seller_id) REFERENCES users (id),
FOREIGN KEY (goods_id) REFERENCES goods (id)
);
-- 创建商品分类表
CREATE TABLE categories (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id)
);
-- 向商品分类表中插入数据
INSERT INTO categories (name) VALUES
('电子产品'),
('家具'),
('文具'),
('服装'),
('图书');
-- 向用户信息表中插入一条管理员信息
INSERT INTO users (name, email, password) VALUES
('管理员', 'admin@campus_market.com', 'password');
-- 创建触发器,用于在插入新用户时自动生成密码的哈希值
DELIMITER //
CREATE TRIGGER users_before_insert
BEFORE INSERT ON users
FOR EACH ROW
BEGIN
SET NEW.password = MD5(NEW.password);
END //
DELIMITER ;
以上代码创建了一个名为“campus_market”的数据库,并在其中创建了四个表:goods(商品信息)、users(用户信息)、orders(订单信息)和categories(商品分类)。在users表中插入了一条管理员信息,并创建了一个触发器,用于在插入新用户时自动生成密码的哈希值。
注意:这只是一个简单的示例,实际上一个完整的校园二手交易网站数据库可能会包含更多的表和字段。
阅读全文