当前位置: 首页 > 文章教程  > 计算机与互联网 > 网络编程

20.2数据库分析

9/17/2020 9:40:31 PM 人评论

20.2数据库分析

20.2 数据库分析

一个成功的网站系统由50%的业务+50%的软件组成,而50%的成功软件又由25%的数据库+25%的程序组成,所以数据库设计的好坏是一个关键。

MySQL Workbench是MySQL的一个著名的建模工具。使用Workbench建立MySQL模型是很方便的。

message系统需要的数据库表包含以下字段:id,title(标题),content(内容),createdtime(创建时间),updatedtime(更新时间)。

product系统需要的数据库表包含以下字段:id,name(名称),shortdescription(简短介绍),description(介绍),type(类型),price(价格),unit(单位),imagelink(图片链接)。

order系统需要的数据库表包含以下字段:id,product_id(产品id),customer_id(客户id),number(数量),days(天数),createdtime(创建时间),special(特殊要求)。

customer系统需要的数据库表包含以下字段:id,name(名称),gender(性别),phone(电话),email,type(类型)。

在Workbench中的数据库视图如图9-3所示。

image

图20-3 数据库视图

通过导出工具得到以下代码:

  SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
  SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
  SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL';
  - -----------------------------------------------------
  -- Table 'goodone'.'message'
  -- -----------------------------------------------------
  CREATE  TABLE IF NOT EXISTS 'goodone'.'message' (
    'id' INT(10) NOT NULL AUTO_INCREMENT ,
    'title' VARCHAR(45) NOT NULL ,
    'content' VARCHAR(650) NOT NULL ,
    'createdtime' VARCHAR(45) NULL ,
    'updatedtime' VARCHAR(45) NULL ,
    PRIMARY KEY ('id') )
  ENGINE = MyISAM
  DEFAULT CHARACTER SET = utf8
  COLLATE = utf8_unicode_ci;
  -- -----------------------------------------------------
  -- Table 'goodone'.'product'
  -- -----------------------------------------------------
  CREATE  TABLE IF NOT EXISTS 'goodone'.'product' (
    'id' INT(10) NOT NULL AUTO_INCREMENT ,
    'name' VARCHAR(45) NULL ,
    'shortdescription' VARCHAR(45) NULL ,
    'description' TEXT NULL ,
    'type' VARCHAR(45) NULL ,
    'price' INT(10) NULL ,
    'unit' VARCHAR(45) NULL ,
    'imageslink' VARCHAR(45) NULL ,
    PRIMARY KEY ('id') )
  ENGINE = MyISAM
  DEFAULT CHARACTER SET = utf8
  COLLATE = utf8_unicode_ci;
  -- -----------------------------------------------------
  -- Table 'goodone'.'order'
  -- -----------------------------------------------------
  CREATE  TABLE IF NOT EXISTS 'goodone'.'order' (
    'id' INT(10) NOT NULL AUTO_INCREMENT ,
    'product_id' INT(10) NULL ,
    'customer_id' INT(10) NULL ,
    'number' INT(10) NULL ,
    'days' INT(10) NULL ,
    'createdtime' VARCHAR(45) NULL ,
    'special' VARCHAR(45) NULL ,
    PRIMARY KEY ('id') )
  ENGINE = MyISAM
  DEFAULT CHARACTER SET = utf8
  COLLATE = utf8_unicode_ci;
  -- -----------------------------------------------------
  -- Table 'goodone'.'customer'
  -- -----------------------------------------------------
  CREATE  TABLE IF NOT EXISTS 'goodone'.'customer' (
    'id' INT(10) NOT NULL ,
    'name' VARCHAR(45) NULL ,
    'gender' ENUM('male','female') NULL ,
    'phone' VARCHAR(45) NULL ,
    'email' VARCHAR(45) NULL ,
    'type' VARCHAR(45) NULL ,
    PRIMARY KEY ('id') )
  ENGINE = MyISAM
  DEFAULT CHARACTER SET = utf8
  COLLATE = utf8_unicode_ci;
  SET SQL_MODE=@OLD_SQL_MODE;
  SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
  SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

在MySQL中执行,便可以得到项目需要的数据库和表格,如图20-4所示。

image

图20-4 在MySQL中创建的数据库和表格

相关教程

共有条评论 网友评论

验证码: 看不清楚?