附录B——MySQL样例表
vendors表:
储存销售产品的供应商信息,每个供应商在这个表中有一个记录,供应商ID(vend_id)列用来匹配产品和供应商。
| 列名 | vend_id | vend_name | vend_address | vend_city | vend_state | vend_zip | vend_country |
|---|---|---|---|---|---|---|---|
| 说明 | 唯一的供应商ID | ~名 | ~地址 | ~城市 | ~州 | ~邮政编码 | ~国家 |
这个表使用vend_id作为主键。vend_id为一个自动增量字段
products表:
包含产品目录,每个产品有唯一的ID(prod_id列),通过vend_id(供应商的唯一ID)关联到它的供应商。
| prod_id | vend_id | prod_name | prod_price | prod_desc |
|---|---|---|---|---|
| 唯一的产品ID | 产品供应商ID(关联到vendors表中的vend_id) | 产品名 | 产品价格 | 产品描述 |
这个表用prod_id作为其主键。为实施引用完整性,应该在vend_id上定义一个外键,关联到vendors的vend_id。
customers表:
存储所有顾客的信息。每个顾客有唯一的ID(cust_id列)。
| cust_id | cust_name | cust_address | cust_city | cust_state | cust_zip | cust_country | cust_contact | cust_email |
|---|---|---|---|---|---|---|---|---|
| 唯一的顾客ID | 顾客名 | 顾客的地址 | 顾客的城市 | 顾客的州 | 顾客的邮政编码 | 顾客的国家 | 顾客的联系名 | 顾客的联系email地址 |
这个表将使用cust_id作为它的主键。cust_id是一个自动增量字段。
orders表:
存储顾客订单(但不是订单细节)。每个订单唯一地编号(order_num列)。订单用cust_id列(它关联到customer表的顾客唯一ID)与相应的顾客关联。
| order_num | order_date | cust_id |
|---|---|---|
| 唯一订单号 | 订单日期 | 订单顾客ID ( 关系到customers 表的cust_id) |
这个表使用order_num作为它的主键。order_num是一个自动增量字段。为实施引用完整性,应该在cust_id上定义一个外键,关联到customers的cust_id。
orderitems表:
orderitems表存储每个订单中的实际物品,每个订单的每个物品占一行。对orders中的每一行,orderitems中有一行或多行。每个订单物品由订单号加订单物品(第一个物品、第二个物品等)唯一标识。订单物品通过order_num列(关联到orders中订单的唯一ID)与它们相应的订单相关联。此外,每个订单项包含订单物品的产品ID(它关联物品到products表)。
| order_num | order_item | prod_id | quantity | item_price |
|---|---|---|---|---|
| 订单号(关联到orders表的order_num) | 订单物品号(在某个订单中的顺序) | 产品ID(关联到products表的prod_id) | 物品数量 | 物品价格 |
这个表使用order_num和order_item作为其主键。为实施引用完整性,应该在order_num上定义外键,关联它到orders的order_num,在prod_id上定义外键,关联它到products的prod_id。
productnotes表:
存储与特定产品有关的注释。并非所有产品都有相关的注释,而有的产品可能有许多相关的注释。
| note_id | prod_id | note_date | note_text |
|---|---|---|---|
| 唯一注释ID | 产品ID(对应于products表中的prod_id) | 增加注释的日期 | 注释文本 |
所有表都应该有主键,这个表应该使用note_id作为其主键。列note_text必须为FULLTEXT搜索进行索引。 由于这个表使用全文本搜索,因此必须指定ENGINE=MyISAM。
附录B——MySQL样例表的更多相关文章
- 《MySQL必知必会》学习笔记——附录B 样例表
附录B 样例表 本附录简要描述本书中所用的表及它们的用途. 编写SQL语句需要对基础数据库的设计有良好的理解.不知道什么信息存储在什么表中,表之间如何关联以及行内数据如何分解,是不可能编写出高效的SQ ...
- Sakila——MySQL样例数据库解析(已经迁移)
一.Introduction Sakila可以作为数据库设计的参考,也可作为实验数据.我是用作数据仓库和ODI学习的实验数据. The Sakila sample database was devel ...
- mysql样例数据库employees
Oracle和sqlserver都有基于员工信息的样例数据库,同样mysql上也是有的. 给出一个连接地址https://github.com/datacharmer/test_db. 下载后直接调用 ...
- jsp操作mysql样例
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- Qt编程之Qt样例表(QSS)
For a long time, Qt has allowed you to decorate your GUIs with CSS’ish style sheets. Inspired by the ...
- 《MySQL必知必会》学习笔记——附录A MySQL入门
附录A MySQL入门 如果你是MySQL的初学者,本附录是一些需要的基础知识. A.1 你需要什么 为使用MySQL和学习本书中各章的内容,你需要访问MySQL服务器和客户机应用(用来访问服务器的软 ...
- JDBC连接MySQL数据库及演示样例
JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...
- myloader恢复mysql数据库演示样例
mydumper是针对mysql数据库备份的一个轻量级第三方的开源工具.备份方式为逻辑备份.它支持多线程.备份速度远高于原生态的mysqldump以及众多优异特性.与其相配套的恢复工具则是mylo ...
- Linux下用OTL操作MySql(包含自己封装的类库及演示样例代码下载)
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/ClamReason/article/details/23971805 首先重点推荐介绍otl介绍及使 ...
随机推荐
- cocos Studio使用问题
使用的时候最好是同一套资源饭在一个文件夹下,或者新建的文件和资源类,一个资源分一个产生的层文件
- TCP学习总结(四)
TCP连接管理 TCP运输连接有3个阶段, 即: 连接建立,数据传送和连接释放. 1. TCP的连接建立(3次握手) TCP连接的建立采用客户服务器方式.主动发起连接建立的应用进程叫做客户(clien ...
- WebService中用CXF框架的wsdl部署生成客户端代码时,使用cmd命令口出现wsimport不是内部或外部命令的问题
网上有很多,都不好用,这个立竿见影的 set JAVA_HOME = *:\Program Files\Java\jdk1.8.0_181(此处为自己jdk的安装路径) set CLASSPATH = ...
- input type file兼容性
input 中的type file类型 在ie10及以上还算正常,在ie9中你就找不到他在哪了 解决此类的问题就需要巧妙的运用的css 以及input 了 需要两个input配合来写,一个i ...
- 剑指Offer 59. 按之字形顺序打印二叉树 (二叉树)
题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推. 题目地址 https://www.nowco ...
- 2018-软工机试-F-庙会
单点时限: 1.0 sec 内存限制: 256 MB 是谁带你来看这场庙会 行为掩饰后超越了思维 舞台上的小丑和你的左小腿 别管我,别把我和他们扯在一起 ——李志<鸵鸟> 来到这场庙会,现 ...
- centOS6.0虚拟机ip配置
1.首先使用虚拟机安装好centOS6.0系统 2.虚拟机网络配置:(选择桥接模式) 3. 第一步:首先关闭防火墙 1.将防火服务从启动列表移除 #chkconfig --del iptables # ...
- sqlserver查看锁表进程及对锁定的表进行解锁
select request_session_id spid,object_name(resource_associated_entity_id) tableName from sys.dm_tran ...
- C# Main函数中调用异步方法的2种实现
As you discovered, in VS11 the compiler will disallow an async Main method. This was allowed (but ne ...
- ES5数组、对象常用方法总结
数组方法: Array.isArray(items);判断判断一个变量是否包含数组数据: forEach(function(value, index, fullArray){ }); every(fu ...