几个常见的建表原则

a,表都加前缀
b,所有的字段选择最小的数据类型,如id可以使用mediumint比INT节省25%的空间
c,尽量所有的字段都设置为NOT NULL的,这样能让速度更快
d,为合适的字段(将来用来查询或者排序的字段)建索引

id 可以用 int , 但是建议使用 mediumint
 
常用的四种
tinyint :  0-255
samllint :  0-65535
mediumint : 0-1千6百多万
int:0-40亿
名称,类型,主键,不为空,自增
id mediumint unsigned not null auto_increment,
===================================
商品价格:
使用decimal(10,2) 表示:一共是十位数字,其中两位是小数,整数位是八位
price decimal(10,2) not null default '0.00' coment '商品价格',
===================================
商品描述:
char : 0-255个字符;
varchar : 0-65535个字节;如果是 utf8 能存 2万多汉字,gbk能存3多字
text:0-65535个字
goods_desc longtext comment '商品描述',
===================================
商品添加时间:
使用int :因为现在的时间已经是14亿多了
addtime int unsigned not null comment '添加时间',
====================================

新建一个数据表

drop table if exists fyz_goods;
create table fyz_goods(
id mediumint unsigned not null auto_increment,
goods_name varchar(45) not null comment '商品名称',
logo varchar(150) not null default '' comment '商品logo',
sw_logo varchar(150) not null default '' comment '商品缩略图',
price decimal(10,2) not null default '0.00' comment '商品价格',
goods_desc longtext comment '商品描述',
is_on_sale tinyint unsigned not null default '1' comment '是否上架;1:上架;0:下架;',
is_delete tinyint unsigned not null default '0' comment '是否删除;1:已经删除;0:没有删除',
addtime int unsigned not null comment '添加时间',
primary key (id),
key price(price),
key is_on_sale(is_on_sale),
key is_delete(is_delete),
key addtime(addtime)
)engine=MyISAM default charset=utf8;

MYSQL创建数据表!的更多相关文章

  1. MySQL 创建数据表

    MySQL 创建数据表 创建MySQL数据表需要以下信息: 表名 表字段名 定义每个表字段 语法 以下为创建MySQL数据表的SQL通用语法: CREATE TABLE table_name (col ...

  2. 九、MySQL 创建数据表

    MySQL 创建数据表 创建MySQL数据表需要以下信息: 表名 表字段名 定义每个表字段 语法 以下为创建MySQL数据表的SQL通用语法: CREATE TABLE table_name (col ...

  3. MySQL创建数据表

    *  创建数据表 * *       *      一.什么是数据表 * *           * *      二.创建数据表的SQL语句模型 * *          DDL * *       ...

  4. MySQL创建数据表并建立主外键关系

    为mysql数据表建立主外键需要注意以下几点: 需要建立主外键关系的两个表的存储引擎必须是InnoDB. 外键列和参照列必须具有相似的数据类型,即可以隐式转换的数据类型. 外键列和参照列必须创建索引, ...

  5. MySql——创建数据表,查询数据,排序查询数据

    参考资料:<Mysql必知必会> 创建数据表 在学习前首先创建数据表和插入数据.如何安装mysql可以看看上个博客https://www.cnblogs.com/lbhym/p/11675 ...

  6. 吴裕雄--天生自然MySQL学习笔记:MySQL 创建数据表

    创建MySQL数据表需要以下信息: 表名 表字段名 定义每个表字段 语法 以下为创建MySQL数据表的SQL通用语法: CREATE TABLE table_name (column_name col ...

  7. PHP MySQL 创建数据表

    PHP 创建 MySQL 表 一个数据表有一个唯一名称,并有行和列组成. 使用 MySQLi 和 PDO 创建 MySQL 表 CREATE TABLE 语句用于创建 MySQL 表. 我们将创建一个 ...

  8. mysql创建数据表时如何判断是否已经存在?

    >>> create table if not exists people(name text,age int(2),gender char(1)); 如上代码表示创建一个名为peo ...

  9. MySQL创建数据表时设定引擎MyISAM/InnoDB

    我在配置mysql时将配置文件中的默认存储引擎设定为了InnoDB.今天查看了MyISAM与InnoDB的区别,在该文中的第七条"MyISAM支持GIS数据,InnoDB不支持.即MyISA ...

随机推荐

  1. Android代码内存优化建议-Android官方篇

    转自:http://androidperformance.com/ http://developer.android.com/intl/zh-cn/training/displaying-bitmap ...

  2. addClass和removeClass函数

    function addClass1(element,value){ if(!element.className){ element.className = value; }else{ newClas ...

  3. B树、Trie树详解

    查找(二) 散列表 散列表是普通数组概念的推广.由于对普通数组可以直接寻址,使得能在O(1)时间内访问数组中的任意位置.在散列表中,不是直接把关键字作为数组的下标,而是根据关键字计算出相应的下标. 使 ...

  4. linux gzip 命令详解

    减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间.gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用. 语法:gzip  ...

  5. 转载:Erlang 函数(Efficiency Guide)

    转自:http://www.cnblogs.com/futuredo/archive/2012/10/26/2737644.html Functions 1  Pattern matching 模式匹 ...

  6. c++ vector init操作

    1) string str[n]={"hello", ...}; vector<string> strArray(str,str+n); 2) vector<st ...

  7. CentOS下添加sudo用户

    一 .sodo的使用 1.1 关于sudo Sudo是linux系统中,非root权限的用户提升自己权限来执行某些特性命令的方式,它使普通用户在不知道超级用户的密码的情况下,也可以暂时的获得root权 ...

  8. CentOS系统命令

    系统命令 yum命令 yum makecache yum 生成缓存 yum list installed mysql* 查看有没有安装过*包 rpm -qa | grep mysql* 查看有没有安装 ...

  9. ThinkPHP导出CSV、Excel

    Thinkphp/Library/Think下新文件文件:Csv.class.php <?php namespace Think; class Csv { //导出csv文件 public fu ...

  10. mysql 5.7 详细图文安装教程

    官网下载太慢,可以上下载频道下载(mysql-installer-community-5.7.13.0.msi): http://download.csdn.net/download/tan3739/ ...