2. 创建表customer-product-orders

在这里插入图片描述
在这里插入图片描述

CREATE TABLE customer (
	cid INT (11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
	cname VARCHAR (50) NOT NULL,
	caddress VARCHAR (50) NOT NULL,
	ccity VARCHAR (50) NOT NULL,
	cstate VARCHAR (20) NOT NULL,
	czip VARCHAR (20) NOT NULL,
	ccountry VARCHAR (20) NULL,
	ccontact VARCHAR (20) NULL,
	cemail VARCHAR (20) NULL
);

CREATE TABLE product (
	pid INT (11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
	pname VARCHAR (50) NOT NULL,
	pprice DECIMAL (8, 2) NOT NULL,
	pdesc VARCHAR (100) NULL,
	pcount INT (11) NOT NULL DEFAULT '0'
);

CREATE TABLE orders (
	oid INT (11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
	pid INT (11) NOT NULL,
	cid INT (11) NOT NULL,
	CONSTRAINT pid  FOREIGN KEY(pid) REFERENCES product(pid),
	CONSTRAINT cid  FOREIGN KEY(cid) REFERENCES customer(cid),
	ocount INT (11) NOT NULL DEFAULT '1',
	oprice DECIMAL (8, 2) NOT NULL,
	odate TIMESTAMP
);
#1. 创建视图是在数据库设计中,当需要从一个已经存在的中提取特定数据并按照特定的计算规则组合时,可以创建一个新的虚拟格,即视图。这个视图并不存储实际的数据,而是根据查询的SQL语句动态生成结果。例如,你可以创建一个显示员工姓名和部门薪水总额的视图,通过将员工和薪资关联起来计算得出。在SQL命令中,通常使用`CREATE VIEW`语句来定义视图。 ```sql CREATE VIEW employee_salaries AS SELECT employees.name, SUM(salaries.salary) as total_salary FROM employees JOIN salaries ON employees.id = salaries.employee_id GROUP BY employees.id; ``` 在这个例子中,`employee_salaries`就是创建的一个视图。 #2. 创建视图则是涉及多个相关的情况。这种视图允许你在一次查询中获取来自多个源的信息,通常是为了简化复杂的查询逻辑或者为了提供一个统一的数据接口。比如,你想创建一个包含客户订单、产品信息和库存状态的视图,以便分析销售数据。创建这样的视图的语法类似: ```sql CREATE VIEW sales_analysis AS SELECT orders.order_id, customers.customer_name, products.product_name, order_details.quantity, inventory.stock_status FROM orders JOIN customers ON orders.customer_id = customers.customer_id JOIN order_details ON orders.order_id = order_details.order_id JOIN products ON order_details.product_id = products.product_id JOIN inventory ON products.product_id = inventory.product_id; ``` 在这个视图中,所有相关的字段都被合并在一起,提供了全面的销售数据概览。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>