Mysql5.6 从零开始学 读书笔记

第四章 数据库的基本操作

  • 使用唯一约束
    唯一约束可以确保一列或者几列不出现重复值
    语法:字段名 数据类型 UNIQUE
    UNIQUE和PRIMARY KEY的区别:一个表中可以有多个字段声明为UNIQUE,但是只有一个PRIMARY KEY声明;声明为PRIMARY KEY的列不允许有空值,但是声明为UNQIUE的字段允许有空值的存在。
  • 设置表的属性值自动增加
    为主键添加ATUO_INCREMENT关键字,初始值为1,每增加一条记录,字段值自动加1。一个表中只能有一个字段使用ATUO_INCREMENT约束,并且该字段必须为主键的一部分,约束的字段可以为任何整数类型。
  • desc 表名;可以查看表结构
  • ALERT TABLE 旧表名 RENAME 新表名
  • 并不是每个表都可以任意选择存储引擎
    外键约束不能跨引擎使用。Mysql支持多种存储引擎,每一个表都可以指定一个不同的存储引擎,但是要注意:外键约束是用来保证数据的参照完整性,如果表之间需要关联外键,却制定了不同的存储引擎,这些表之间是不能创建外键约束的。

第五章 数据类型和运算符

  • 显示宽度只用于显示,并不能限制取值范围和占用空间,如,INT(3)会占用4个字节的存储空间,并且允许的最大值也不会是999,而是INT整型所允许的最大值。
  • 不论是定点还是浮点类型,如果用户指定的精度超出精度范围,则会四舍五入。
  • 在Mysql中,定点数以字符串形式存储,在对精度要求比较高的时候,使用DECIMAL的类型比较好。
  • 日期与时间类型,插入的时候要用字符串格式,比如插入year类型 ‘1996’
  • 日期的范围:1901~2155
  • CHAR(M)为固定长度字符串,M长度范围是0-255所占字节始终为4,VARCHAR(M)为变长字符串,M的长度范围是0-65535,占用字节为字符串的实际长度+1。
  • CHAR会自动删除插入数据的尾部空格,VARCHAR不会删除尾部空格。
  • 比较运算符
    • 等于运算符 =
      数值比较有以下规则
      • 若有一个或两个参数为NULL,则比较运算的结果为NULL。
      • 若同一个比较运算中的两个参数都是字符串,则按照字符串进行比较。
      • 若两个参数均为整数,则按照整数进行比较
      • 若一个字符串和数字进行相等判断,则MySql可以自动将字符串转换为数字。
    • 安全等于运算符 <=>,可以用来判断NULL值。
    • between and 运算符
      4 between 2 and 5 = 1
    • least(2,0) = 0 用于返回列表中最小的值。当参数为整型或者浮点型时,least返回最小的值;当参数为字符串时,返回字母表中顺序考前的字符;当比较值列表中有NULL时,不能判断大小,返回值为null。
    • greatest(value1,value2) 用于返回参数列表中的最大值,如果列表中有null,则返回null。
    • in 用来判断操作数是否为in列表中的其中一个值,如果是,则返回值为1,;否则返回0。
    • not in 运算符 与in含义相反。
    • like 运算符用来匹配字符串,如果匹配则返回1,不匹配返回0,若表达式或匹配条件中任何一个为null,则结果为null。 “%”匹配任何数目的字符,包括零字符串。“_”只能匹配一个字符。
    • recexp 用来匹配字符串
    • Mysql如何使用特殊字符诸如单引号,双引号,反斜杠等符号,这些是不能直接输入的,需要使用反斜杠来转义。
    • Mysql中如何执行区分大小写的字符串比较?
      Mysql不区分大小写,如果想执行区分大小写的比较,就在字符串前面天机binary关键字。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值