数据库表实践
Init Database
CREATE DATABASE IF NOT EXISTS mc_customer DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
CREATE DATABASE IF NOT EXISTS mc_product DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
CREATE DATABASE IF NOT EXISTS mc_order DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
Init User
CREATE TABLE IF NOT EXISTS `customer_login`(
`customer_id` INT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT '用户ID',
`login_name` VARCHAR(20) NOT NULL COMMENT '用户登录名',
`password` CHAR(32) NOT NULL COMMENT 'md5加密的密码',
-- 禁止使用枚举类型,而采用约定的整型
`user_stats` TINYINT NOT NULL DEFAULT 1 COMMENT '用户状态,1 可用,0 冻结',
-- modified_time 在更新数据时自动更新
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_customerid (`customer_id`)
) engine = innodb COMMENT='用户登录表';
INSERT INTO `customer_login` (`customer_id`, `login_name`, `password`, `user_stats`)
VALUES
(1, 'admin', 'D959CAADAC9B13DCB3E609440135CF54', 1),
(2, 'user', 'D959CAADAC9B13DCB3E609440135CF54', 1),
(3, 'root', 'D959CAADAC9B13DCB3E609440135CF54', 1),
(4, 'guest', 'D959CAADAC9B13DCB3E609440135CF54', 1);
CREATE TABLE IF NOT EXISTS `customer_inf`(
`customer_inf_id` INT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT '用户信息ID',
-- 关联外键,但是不使用外键约束,而在程序中维护表关系,避免在增删父表数据时还需要检查外键约束
`customer_id` INT UNSIGNED NOT NULL COMMENT 'customer_login表的自增ID',
`customer_name` VARCHAR(20) NOT NULL COMMENT '用户真实姓名',
`identity_card_type` TINYINT NOT NULL DEFAULT 1 comment '证件类型:1 身份证,2 军官证,3 护照',
`identity_card_no` VARCHAR(20) COMMENT '证件号码',
`mobile_phone` CHAR(16) COMMENT '手机号',
`customer_email` VARCHAR(50) COMMENT '邮箱',
-- 使用最短长度设置属性的宽度
`gender` CHAR(1) COMMENT '性别:0 女,1 男',
`user_point` INT NOT NULL DEFAULT 0 COMMENT '用户积分',
`register_time` TIMESTAMP NOT NULL COMMENT '注册时间',
-- 使用日期类型,能够使用日期函数,且存储只需8字节
`birthday` DATETIME COMMENT '会员生日',
`customer_level` TINYINT NOT NULL DEFAULT 1 COMMENT '会员级别:1 普通会员,2 青铜会员,3 白银会员,4 黄金会员,5 钻石会员',
-- 金额类数据,必须使用 decimal 类型,精确浮点型,计算时不会丢失精度
`user_money` DECIMAL(8,2) NOT NULL DEFAULT 0.00 COMMENT '用户余额',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_customerinfid(`customer_inf_id`)
) engine = innodb COMMENT='用户信息表';
INSERT INTO `customer_inf` (
`customer_inf_id`,
`customer_id`,
`customer_name`,
`identity_card_type`,
`identity_card_no`,
`mobile_phone`,
`customer_email`,
`gender`,
`user_point`,
`register_time`,
`birthday`,
`customer_level`,
`user_money`) VALUES
(1, 1, '管理员', 1, null, '+86 13700001111', null, 1, 0, NOW(), NOW(), 3, 0.00),
(2, 2, '用户', 1, null, '+86 18800001111', null, 1, 0, NOW(), NOW(), 1, 0.00),
(3, 3, '超级管理员', 1, null, '+86 18822223333', null, 1, 0, NOW(), NOW(), 5, 0.00),
(4, 4, '测试', 1, null, '+86 18844445555', null, 1, 0, NOW(), NOW(), 2, 0.00);
CREATE TABLE IF NOT EXISTS `customer_level_inf`(
`customer_level` TINYINT NOT NULL AUTO_INCREMENT COMMENT '会员级别ID',
`level_name` VARCHAR(10) NOT NULL COMMENT '会员级别名称',
-- 积分上下线,使用无符号标识,无符号数值的上限为2^32
`min_point` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '该级别最低积分',
`max_point` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '该级别最高积分',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_levelid(`customer_level`)
) engine = innodb COMMENT='用户级别信息表';
INSERT INTO `customer_level_inf` (
`customer_level`,
`level_name`,
`min_point`,
`max_point`
) VALUES
(1, '普通会员', 0, 99),
(2, '青铜会员', 100, 199),
(3, '白银会员', 200, 499),
(4, '黄金会员', 500, 1000),
(5, '钻石会员', 1000, 10000);
CREATE TABLE IF NOT EXISTS `customer_addr`(
`customer_addr_id` INT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT '自增主键ID',
`customer_id` INT UNSIGNED NOT NULL COMMENT 'customer_login表的自增ID',
`zip` SMALLINT NOT NULL COMMENT '邮编',
`province` SMALLINT NOT NULL COMMENT '地区表中的省份ID',
`city` SMALLINT NOT NULL COMMENT '地区表中的城市ID',
`district` SMALLINT NOT NULL COMMENT '地区表中的区ID',
`address` VARCHAR(200) NOT NULL COMMENT '具体的地址门牌号',
`is_default` TINYINT NOT NULL COMMENT '是否默认:1 默认,0 不默认',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_customeraddrid(`customer_addr_id`)
) engine = innodb COMMENT='用户地址表';
INSERT INTO `customer_addr` (
`customer_addr_id`,
`customer_id`,
`zip`,
`province`,
`city`,
`district`,
`address`,
`is_default`
) VALUES
(1, 2, 20000, 1, 1, 5, '湄浦路310弄B栋405室', 1),
(2, 2, 20000, 1, 1, 8, '大柏树凉城四村100栋301室', 0),
(3, 2, 20000, 1, 1, 3, '长逸路15号复旦软件园B栋1111室', 0);
CREATE TABLE IF NOT EXISTS `customer_point_log`(
`point_id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '积分日志ID',
`customer_id` INT UNSIGNED NOT NULL COMMENT '用户ID',
`source` TINYINT UNSIGNED NOT NULL COMMENT '积分来源:0 订单,1 登录,2 活动',
`refer_number` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '积分来源相关编号',
-- 变更积分可能为负值,因此为有符号数,有符号数的范围为 -2^31 ~ 2^31-1
`change_point` SMALLINT NOT NULL DEFAULT 0 COMMENT '变更积分数',
`create_time` TIMESTAMP NOT NULL COMMENT '积分日志生成时间',
PRIMARY KEY pk_pointid(`point_id`)
) engine = innodb COMMENT='用户积分日志表';
CREATE TABLE IF NOT EXISTS `customer_balance_log`(
`balance_id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '余额日志ID',
`customer_id` INT UNSIGNED NOT NULL COMMENT '用户ID',
`source` TINYINT UNSIGNED NOT NULL DEFAULT 1 COMMENT '记录来源:1 订单,2 退货单',
`source_sn` INT UNSIGNED NOT NULL COMMENT '相关单据ID',
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录生成时间',
`amount` DECIMAL(8,2) NOT NULL DEFAULT 0.00 COMMENT '变动金额',
PRIMARY KEY pk_blanceid (`balance_id`)
) engine = innodb COMMENT '用户余额变动表';
CREATE TABLE IF NOT EXISTS `customer_login_log`(
-- 分区表不建议创建主键,因为主键会创建一个唯一性全局索引,在 drop 分区表时会使索引失效,导致数据无法入库。
-- login_id INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '登录日志ID',
`customer_id` INT UNSIGNED NOT NULL COMMENT '登录用户ID',
-- 用户登录只有登录时间,因此不设置修改时间
`login_time` TIMESTAMP NOT NULL COMMENT '用户登录时间',
`login_ip` INT UNSIGNED NOT NULL COMMENT '登录IP',
`login_type` TINYINT NOT NULL COMMENT '登录类型:0 未成功,1 成功'
-- PRIMARY KEY pk_loginid (login_id)
) engine = innodb COMMENT '用户登录日志表'
-- 对用户登录日志表进行分区,规则为 login_time 以年为范围分区,这样方便对用户登录日志做归档及删除操作
PARTITION BY RANGE(UNIX_TIMESTAMP(`login_time`))(
PARTITION p0 VALUES LESS THAN (UNIX_TIMESTAMP('2018-01-01 00:00:00')),
PARTITION p1 VALUES LESS THAN (UNIX_TIMESTAMP('2019-01-01 00:00:00')),
PARTITION p2 VALUES LESS THAN (UNIX_TIMESTAMP('2020-01-01 00:00:00'))
);
INSERT INTO `customer_login_log` (`customer_id`, `login_time`, `login_ip`, `login_type`)
VALUES
(1, '2015-01-02',INET_ATON('192.168.10.101'),1),
(1, '2018-01-02',INET_ATON('192.168.10.102'),0),
(1, '2019-01-02',INET_ATON('192.168.10.103'),1),
(1, '2017-01-02',INET_ATON('192.168.10.101'),0),
(1, '2019-01-02',INET_ATON('192.168.10.102'),1);
Init Product
CREATE TABLE `brand_info`(
`brand_id` SMALLINT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT '品牌ID',
`brand_name` VARCHAR(50) NOT NULL COMMENT '品牌名称',
`telephone` VARCHAR(50) NOT NULL COMMENT '联系电话',
`brand_web` VARCHAR(100) COMMENT '品牌网站',
`brand_logo` VARCHAR(100) COMMENT '品牌LOGO',
`brand_desc` VARCHAR(150) COMMENT '品牌描述',
`brand_status` TINYINT NOT NULL DEFAULT 0 COMMENT '品牌状态:0 禁用,1 启用',
`brand_order` TINYINT NOT NULL DEFAULT 0 COMMENT '排序',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_brandid(`brand_id`)
) ENGINE = INNODB COMMENT '品牌信息表';
CREATE TABLE `product_category`(
`category_id` SMALLINT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT '分类ID',
`category_name` VARCHAR(10) NOT NULL COMMENT '分类名称',
`parent_id` SMALLINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '父分类ID',
`category_level` TINYINT NOT NULL DEFAULT 1 COMMENT '分类层级',
`category_status` TINYINT NOT NULL DEFAULT 1 COMMENT '分类状态',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_categoryid(`category_id`)
) ENGINE = INNODB COMMENT '商品分类表';
CREATE TABLE `supplier_info`(
`supplier_id` INT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT '供应商ID',
`supplier_code` CHAR(8) NOT NULL COMMENT '供应商编码',
`supplier_name` CHAR(50) NOT NULL COMMENT '供应商名称',
`supplier_type` TINYINT NOT NULL COMMENT '供应商类型:1 自营,2 平台',
`link_man` VARCHAR(10) NOT NULL COMMENT '供应商联系人',
`phone_number` VARCHAR(50) NOT NULL COMMENT '联系电话',
`bank_name` VARCHAR(50) NOT NULL COMMENT '供应商开户银行名称',
`bank_account` VARCHAR(50) NOT NULL COMMENT '银行账号',
`address` VARCHAR(200) NOT NULL COMMENT '供应商地址',
`supplier_status` TINYINT NOT NULL DEFAULT '0' COMMENT '状态:0 禁用,1 启用',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_supplierid(`supplier_id`)
) ENGINE = INNODB COMMENT '供应商信息表';
CREATE TABLE `product_info` (
`product_id` INT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT '商品ID',
`product_code` CHAR(16) NOT NULL COMMENT '商品编码',
`product_name` VARCHAR(20) NOT NULL COMMENT '商品名称',
`bar_code` VARCHAR(50) NOT NULL COMMENT '条形码',
`brand_id` INT UNSIGNED NOT NULL COMMENT '品牌表的ID',
`one_category_id` SMALLINT NOT NULL COMMENT '一级分类ID',
`two_category_id` SMALLINT NOT NULL COMMENT '二级分类ID',
`three_category_id` SMALLINT NOT NULL COMMENT '三级分类ID',
`supplier_id` INT NOT NULL COMMENT '商品的供应商ID',
`price` DECIMAL(8,2) NOT NULL COMMENT '商品销售价格',
`average_cose` DECIMAL(18,2) NOT NULL COMMENT '商品加权平均成本',
`publish_status` TINYINT NOT NULL DEFAULT 0 COMMENT '上下架状态:0 下架,1 上架',
`audit_status` TINYINT NOT NULL DEFAULT 0 COMMENT '审核状态:0 未审核,1 已审核',
`weight` FLOAT COMMENT '商品重量',
`length` FLOAT COMMENT '商量长度',
`height` FLOAT COMMENT '商品高度',
`width` FLOAT COMMENT '商品宽度',
`color_type` ENUM('红','黄','绿','紫','蓝','白','黑','粉'),
`production_date` DATETIME NOT NULL COMMENT '生产日期',
`shelf_life` INT NOT NULL COMMENT '商品有效期',
`descript` TEXT NOT NULL COMMENT '商品描述',
`indate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '商品录入时间',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_productid(`product_id`)
) ENGINE = INNODB COMMENT '商品信息表';
CREATE TABLE `product_pic_info` (
`product_pic_id` INT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT '商品图片ID',
`product_id` INT UNSIGNED NOT NULL COMMENT '商品ID',
`pic_desc` VARCHAR(50) COMMENT '图片描述',
`pic_url` VARCHAR(50) COMMENT '图片url',
`is_master` TINYINT NOT NULL DEFAULT 0 COMMENT '是否主图:0 非主图,1 主图',
`pic_order` TINYINT NOT NULL DEFAULT 0 COMMENT '图片排序',
`pic_status` TINYINT NOT NULL DEFAULT 1 COMMENT '图片是否有效:0 无效,1 有效',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_picid(`product_pic_id`)
) ENGINE = INNODB COMMENT '商品图片信息表';
CREATE TABLE `product_comment` (
`comment_id` INT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT '评论ID',
`product_id` INT UNSIGNED NOT NULL COMMENT '商品ID',
`order_id` BIGINT UNSIGNED NOT NULL COMMENT '订单ID',
`customer_id` INT UNSIGNED NOT NULL COMMENT '用户ID',
`title` VARCHAR(50) NOT NULL COMMENT '评论标题',
`content` VARCHAR(300) NOT NULL COMMENT '评论内容',
`audit_status` TINYINT NOT NULL COMMENT '审核状态:0 未审核,1 已审核',
`audit_time` TIMESTAMP NOT NULL COMMENT '评论时间',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_commentid(`comment_id`)
) ENGINE = INNODB COMMENT '商品评论表';
Init Order
CREATE TABLE `order_master`(
`order_id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '订单ID',
`order_sn` BIGINT UNSIGNED NOT NULL COMMENT '订单编号 yyyymmddnnnnnn',
`customer_id` INT UNSIGNED NOT NULL COMMENT '下单人ID',
`shipping_user` VARCHAR(10) NOT NULL COMMENT '收货人姓名',
`province` SMALLINT NOT NULL COMMENT '省',
`city` SMALLINT NOT NULL COMMENT '市',
`district` SMALLINT NOT NULL COMMENT '区',
`address` VARCHAR(200) NOT NULL COMMENT '地址',
`payment_method` TINYINT NOT NULL COMMENT '支付方式:1 现金,2 余额,3 网银,4 支付宝,5 微信',
`order_money` DECIMAL(8,2) NOT NULL COMMENT '订单金额',
`district_monry` DECIMAL(8,2) NOT NULL DEFAULT 0.00 COMMENT '优惠金额',
`shipping_money` DECIMAL(8,2) NOT NULL DEFAULT 0.00 COMMENT '运费金额',
`payment_money` DECIMAL(8,2) NOT NULL DEFAULT 0.00 COMMENT '支付金额',
`shipping_comp_name` VARCHAR(10) NOT NULL COMMENT '快递公司名称',
`shipping_sn` VARCHAR(50) NOT NULL COMMENT '快递单号',
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '下单时间',
`shipping_time` DATETIME COMMENT '发货时间',
`pay_time` DATETIME COMMENT '支付时间',
`receive_time` DATETIME COMMENT '收货时间',
`order_status` TINYINT NOT NULL DEFAULT 0 COMMENT '订单状态',
`order_point` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '订单积分',
`invoice_title` VARCHAR(100) NOT NULL COMMENT '发票抬头',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_orderid(`order_id`)
) ENGINE = INNODB COMMENT '订单主表';
CREATE TABLE `order_detail`(
`order_detail_id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '订单详情ID',
`order_id` INT UNSIGNED NOT NULL COMMENT '订单表ID',
`product_id` INT UNSIGNED NOT NULL COMMENT '订单商品ID',
`product_name` VARCHAR(50) NOT NULL COMMENT '商品名称',
`product_cnt` INT UNSIGNED NOT NULL DEFAULT 1 COMMENT '购买商品数量',
`product_price` DECIMAL(8,2) NOT NULL COMMENT '购买商品单价',
`average_cost` DECIMAL(8,2) NOT NULL DEFAULT 0.00 COMMENT '平均成本价格',
`weight` FLOAT COMMENT '商品重量',
`fee_money` DECIMAL(8,2) NOT NULL DEFAULT 0.00 COMMENT '优惠分摊金额',
`w_id` INT UNSIGNED NOT NULL COMMENT '仓库ID',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_orderdetailid(`order_detail_id`)
) ENGINE = INNODB COMMENT '订单详情表';
CREATE TABLE `order_cart`(
`cart_id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '购物车ID',
`customer_id` INT UNSIGNED NOT NULL COMMENT '用户ID',
`product_id` INT UNSIGNED NOT NULL COMMENT '商品ID',
`product_amount` INT UNSIGNED NOT NULL COMMENT '加入购物车商品数量',
`price` DECIMAL(8,2) NOT NULL COMMENT '商品价格',
`add_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '加入购物车时间',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_cartid(`cart_id`)
) ENGINE = INNODB COMMENT '购物车表';
CREATE TABLE `warehouse_info`(
`w_id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '仓库ID',
`warehouse_sn` CHAR(5) NOT NULL COMMENT '仓库编码',
`warehouse_name` VARCHAR(10) NOT NULL COMMENT '仓库名称',
`warehouse_phone` VARCHAR(20) NOT NULL COMMENT '仓库电话',
`contact` VARCHAR(10) NOT NULL COMMENT '仓库联系人',
`province` SMALLINT NOT NULL COMMENT '省',
`city` SMALLINT NOT NULL COMMENT '市',
`district` SMALLINT NOT NULL COMMENT '区',
`address` VARCHAR(200) NOT NULL COMMENT '仓库地址',
`warehouse_status` TINYINT NOT NULL DEFAULT 1 COMMENT '仓库状态:0 禁用,1 启用',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_wid(`w_id`)
) ENGINE = INNODB COMMENT '仓库信息表';
CREATE TABLE `warehouse_product`(
`wp_id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '商品库存ID',
`product_id` INT UNSIGNED NOT NULL COMMENT '商品ID',
`w_id` INT UNSIGNED NOT NULL COMMENT '仓库ID',
`current_cnt` INT NOT NULL DEFAULT 0 COMMENT '当前商品数量',
`lock_cnt` INT NOT NULL DEFAULT 0 COMMENT '当前占用数据',
`in_transit_cnt` INT NOT NULL DEFAULT 0 COMMENT '在途数据',
`average_cost` DECIMAL(8,2) NOT NULL DEFAULT 0.00 COMMENT '移动加权成本',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_wpid(`wp_id`)
) ENGINE = INNODB COMMENT '商品库存表';
CREATE TABLE `shipping_info`(
`ship_id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '物流公司ID',
`ship_name` VARCHAR(20) NOT NULL COMMENT '物流公司名称',
`ship_contact` VARCHAR(20) NOT NULL COMMENT '物流公司联系人',
`telphone` VARCHAR(20) NOT NULL COMMENT '物流公司联系电话',
`price` DECIMAL(8,2) NOT NULL DEFAULT 0.00 COMMENT '配送价格',
`modified_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
PRIMARY KEY pk_shipid(`ship_id`)
) ENGINE = INNODB COMMENT '物流公司信息表';
《高性能MySQL》目录
- 第一章 数据库设计规范
- 第二章 数据库字段设计规范
- 第三章 数据库 SQL 开发规范
- 第四章 数据库操作行为规范
- 第五章 设计数据库分区表
- 第六章 MySQL存储引擎
- 第七章 MySQL 执行优化
- 第八章 MySQL 慢查询日志
- 第九章 MySQL 数据库备份与恢复
- 第十章 MySQL构架拆分
- 其他:MySQL表结构实践sql
- 其他2:MySQL常用命令