实施步骤 --创建数据库ProductDB 使用ProductDB --创建表T_category 创建表T_product 创建表T_product_review /*建约束、建关系*/ --产品表中产品价格列(Price)只能输入1-1000之间的数; --录入时间列(Register_date)默认值为当前录入时间(三个表均设置) --建关系 为T_product_review表设置外键 为T_product表设置外键 --在三个表中录入3条测试数据; 在T_category插入数据('0001','电子产品',default) 在T_product表中插入数据('0001','洗衣机',999,'性价比非常高',default) 在T_product_review表中插入数据('01',1,'此款洗衣机挺好用的,价格也不贵',default) --查询某类别下所有产品; --查询产品价格在300-500元之间的产品; --查询录入日期在2011年3月到6月之间的产品数据; --查询产品价格在90-200元之间的所有评论; --查询评论数在1-3条的所有产品 3. 实训要求 数据库和表以数据库导出的形式提交,数据操作以SQL语句的形式提交。 4. 注意事项(无)
时间: 2024-03-21 18:38:48 浏览: 130
数据库设计--网上购物商城(源代码 源程序).zip
5星 · 资源好评率100%
好的,以下是实施步骤:
1. 创建数据库ProductDB,并使用该数据库:
```
CREATE DATABASE ProductDB;
USE ProductDB;
```
2. 创建表T_category:
```
CREATE TABLE T_category (
category_id CHAR(4) PRIMARY KEY,
category_name VARCHAR(20) NOT NULL,
create_time DATETIME DEFAULT CURRENT_TIMESTAMP
);
```
3. 创建表T_product:
```
CREATE TABLE T_product (
product_id CHAR(4) PRIMARY KEY,
product_name VARCHAR(20) NOT NULL,
price INT CHECK (price BETWEEN 1 AND 1000),
description VARCHAR(100),
register_date DATETIME DEFAULT CURRENT_TIMESTAMP,
category_id CHAR(4) NOT NULL,
CONSTRAINT fk_category FOREIGN KEY (category_id) REFERENCES T_category(category_id)
);
```
4. 创建表T_product_review:
```
CREATE TABLE T_product_review (
review_id CHAR(2) PRIMARY KEY,
product_id CHAR(4) NOT NULL,
review_content VARCHAR(100) NOT NULL,
review_date DATETIME DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT fk_product FOREIGN KEY (product_id) REFERENCES T_product(product_id)
);
```
5. 插入测试数据:
```
INSERT INTO T_category (category_id, category_name) VALUES ('0001', '电子产品');
INSERT INTO T_product (product_id, product_name, price, description, category_id)
VALUES ('0001', '洗衣机', 999, '性价比非常高', '0001');
INSERT INTO T_product_review (review_id, product_id, review_content)
VALUES ('01', '0001', '此款洗衣机挺好用的,价格也不贵');
```
6. 查询某类别下所有产品:
```
SELECT * FROM T_product WHERE category_id = '0001';
```
7. 查询产品价格在300-500元之间的产品:
```
SELECT * FROM T_product WHERE price BETWEEN 300 AND 500;
```
8. 查询录入日期在2011年3月到6月之间的产品数据:
```
SELECT * FROM T_product WHERE YEAR(register_date) = 2011 AND MONTH(register_date) BETWEEN 3 AND 6;
```
9. 查询产品价格在90-200元之间的所有评论:
```
SELECT review_content FROM T_product_review
WHERE product_id IN (SELECT product_id FROM T_product WHERE price BETWEEN 90 AND 200);
```
10. 查询评论数在1-3条的所有产品:
```
SELECT T_product.product_name
FROM T_product
JOIN (SELECT product_id, COUNT(*) as review_count FROM T_product_review GROUP BY product_id) AS review_counts
ON T_product.product_id = review_counts.product_id
WHERE review_counts.review_count BETWEEN 1 AND 3;
```
以上就是实施步骤和查询操作了,如果还有其他问题,请继续提问。
阅读全文