数据库基本结构

  • –数据库:数据库是表的集合,带有相关的数据。
  • –表:一个表是多个字段的集合。
  • – 字段:一个字段是一列数据,由字段名和记录组成。

数据表

  • – 数据库是由多个数据表构成的
  • – 每张数据表存储多个字段
  • – 每个字段由不同的字段名及记录构成,每个字段有自己的数据结构及约束条件

数据类型

  1. 数值类型
    – INT:有符号的和无符号的。有符号大小-21474836482147483647,无符号大04294967295。宽度最多为11个数字- int(11)
    – TINYINT:有符号的和无符号的。有符号大小-128127,无符号大小为0255。宽度最多为4个数字- tinyint(4)
    – SMALLINT:有符号的和无符号的。有符号大小-3276832767,无符号大小为065535。宽度最多为6个数字- smallint(6)
    – MEDIUMINT:有符号的和无符号的。有符号大小-83886088388607,无符号大小为016777215。宽度最多为9个数字- mediumint(9)
    – BIGINT:有符号的和无符号的。宽度最多为20个数字- bigint(20)
    – FLOAT(M,D):只能为有符号的。默认为(10,2)
    – DOUBLE(M,D):只能为有符号的。默认为(16,4)
    – DECIMAL(M,D):只能为有符号的。
  2. 字符串类型
    – CHAR(M):固定长度字符串,长度为1-255。如果内容小于指定长度,右边填充空格。如果不指定长度,默认为1
    – VARCHAR(M): 可变长度字符串,长度为1-255。定义该类型时必须指定长度
    – BLOB 或TEXT:最大长度65535。存储二进制大数据,如图片。不能指定长度。两者区别:BLOB 大小写敏感
    – TINYBLOB 和TINYTEXT:最大长度255。不能指定长度。
    – MEDIUMBLOB 或MEDIUMTEXT:最大长度16777215 字符
    – LONGBLOB 或LONGTEXT:最大长度4294967295 字符
    – ENUM:枚举。例如:ENUM(‘A’,’B’,’C’)。NULL值也可
  3. 日期和时间类型
    – DATE:YYYY-MM-DD格式,在1000-01-01和9999-12-31之间。例如:1973-12-30
    – DATETIME:YYYY-MM-DD HH:MM:SS格式,位于1000-01-01 00:00:00和9999-12-31 23:59:59之间。例如:1973-12-30 15:30:00
    – TIMESTAMP:称为时间戳,在1970-01-01 00:00:00和2037-12-31 23:59:59之间。例如,1973年12月30日下午15:30,则在数据库中存储为:19731230153000
    – TIME: 以HH:MM:SS格式, -838:59:59~838:59:59
    – YEAR(2|4): 以2位或4位格式存储年份值。如果是2位,1970-2069,如果是4位,1901-2155。默认长度为4

约束条件

  • – 约束是在表上强制执行的数据检验规则
  • – 用来保证创建的表的数据完整和正确
  • – MySQL数据库常用约束条件:
PRIMARY KEY 主键约束 字段名 数据类型 PRIMARY KEY
 NOT NULL 非空约束 字段名 数据类型 NOT NULL
 UNIQUE 唯一约束 字段名 数据类型 UNIQUE
 AUTO_INCREMENT 自增字段 字段名 数据类型 AUTO_INCREMENT
 DEFAULT 默认值 字段名 数据类型 DEFAULT 默认值