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样例表的更多相关文章

  1. 《MySQL必知必会》学习笔记——附录B 样例表

    附录B 样例表 本附录简要描述本书中所用的表及它们的用途. 编写SQL语句需要对基础数据库的设计有良好的理解.不知道什么信息存储在什么表中,表之间如何关联以及行内数据如何分解,是不可能编写出高效的SQ ...

  2. Sakila——MySQL样例数据库解析(已经迁移)

    一.Introduction Sakila可以作为数据库设计的参考,也可作为实验数据.我是用作数据仓库和ODI学习的实验数据. The Sakila sample database was devel ...

  3. mysql样例数据库employees

    Oracle和sqlserver都有基于员工信息的样例数据库,同样mysql上也是有的. 给出一个连接地址https://github.com/datacharmer/test_db. 下载后直接调用 ...

  4. jsp操作mysql样例

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  5. Qt编程之Qt样例表(QSS)

    For a long time, Qt has allowed you to decorate your GUIs with CSS’ish style sheets. Inspired by the ...

  6. 《MySQL必知必会》学习笔记——附录A MySQL入门

    附录A MySQL入门 如果你是MySQL的初学者,本附录是一些需要的基础知识. A.1 你需要什么 为使用MySQL和学习本书中各章的内容,你需要访问MySQL服务器和客户机应用(用来访问服务器的软 ...

  7. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

  8. myloader恢复mysql数据库演示样例

     mydumper是针对mysql数据库备份的一个轻量级第三方的开源工具.备份方式为逻辑备份.它支持多线程.备份速度远高于原生态的mysqldump以及众多优异特性.与其相配套的恢复工具则是mylo ...

  9. Linux下用OTL操作MySql(包含自己封装的类库及演示样例代码下载)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/ClamReason/article/details/23971805 首先重点推荐介绍otl介绍及使 ...

随机推荐

  1. SSL backend error when using OpenSSL pycurl install error

    centos7 pip install pycurl 错误 pip uninstall pycurl export PYCURL_SSL_LIBRARY=nss pip install pycurl ...

  2. hadoop2.6.0高可靠及yarn 高可靠搭建

    以前用hadoop2.2.0只搭建了hadoop的高可用,但在hadoop2.2.0中始终没有完成YARN HA的搭建,直接下载了hadoop最新稳定版本2.6.0完成了YARN HA及HADOOP ...

  3. Oracle学习DayOne(SQL初步)

    一.DML.DDL.DCL SQL语句分为以下三种类型: DML: Data Manipulation Language 数据操纵语言DDL: Data Definition Language 数据定 ...

  4. MyBatis最原始的实现curd的操作

    关于jdbc的缺点: 1.数据库链接创建释放频繁造成系统资源浪费从而影响系统性能.如果使用数据库连接池可以解决此问题. 2.sql语句在代码中硬编码,不利于维护,sql变动需要改变java代码 3.使 ...

  5. 52 和 52Rc 通过IIC写入数据

  6. Qt终结者之粒子系统

    前言 粒子系统用于模拟一些特定的模糊效果,如爆炸.烟火.雪花.水流等.使用传统的渲染技术实现粒子效果比较困难,但是使用QML粒子系统能十分方便的实现各种粒子效果,使你的界面更加炫酷,动感. QML中的 ...

  7. 认识enum

    今天在看别人代码的时候发现他的使用enum的方法,我是不会用的,因此记录一下. 这个是一个语音合成,今天改为使用百度的语音,可以免费支持离线.在线. 在语音合成的使用,会使用许多的词句让其合成语音,用 ...

  8. python笔记1——关于文件的打开与读写

    一.文件的打开与关闭1.open,close函数 #-*- coding:utf-8 -*- # 1.w 写模式,它是不能读的,如果用w模式打开一个已经存在的文件,会清空以前的文件内容,重新写 # w ...

  9. dos脚本》大神

    关于dos命令行脚本编写 dos常用命令另查 开始之前先简单说明下cmd文件和bat文件的区别:在本质上两者没有区别,都是简单的文本编码方式,都可以用记事本创建.编辑和查看.两者所用的命令行代码也是共 ...

  10. java利用itext导出pdf

    项目中有一功能是导出历史记录,可以导出pdf和excel,这里先说导出pdf.在网上查可以用那些方式导出pdf,用itext比较多广泛. 导出pdf可以使用两种方式,一是可以根据已有的pdf模板,进行 ...