• mysql基础


    mysql是关系型数据库。SQL:结构化语句。mysql是c/s 结构。

    mysql配置环境变量网上搜有的是。如果不用cmd命令行打开mysql就不需要配置环境变量,因为不配置环境变量,使用命令行打开需要把mysql启动程序路径输入进去才行。

    类似上面的这种。很麻烦。配置环境变量之后,就可以直接输入mysql  启动。更方便而已。

    命令:  c      清除命令  q    exit;  quit   都是退出mysql命令。

    创建的数据库都在mysql目录下的data目录中。没有修改数据库名字的命令,只能去data目录中修改数据库名字。(实际中不需要修改数据库名)

    注意mysql命令创建表的时候,最后一个)前不能有逗号,这个错误不容易被发现。

    group by的原理

    1. mysql中直接在某一个列中插入false,会转成整数 0。插入字符串的false 在数据库中存储的才是false。
    2. mysql中的空值和null不是一回事,空值是插入一个空字符串,空值是不占用空间的,而null是占用额外的空间的,用来标记值是否为null。空格也能插入数据库中,但它不是空值,它有长度。(NULL columns require additional space in the row to record whether their values are NULL. For MyISAM tables, each NULL column takes one bit extra, rounded up to the nearest byte.)
    3. select * from tablename where columnname <> ''     和  select * from tablename where column is not null     查询的结果是不一样的,前者查的是不为空值,后者查的是不为null的。
    4. null值不被记录在索引上的,索引的字段有null会降低效率。
    5. 对于timestamp数据类型,如果往这个数据类型的列插入NULL值,则出现的值是当前系统时间。插入空值,则会出现 ‘0000-00-00 00:00:00’。 
    6. mysql 写原生语句注意:字符串必须加引号,例如 "select id,name from goods where name = '{$name}'   "; 如果name不加引号报错。还有原生语句的关键字顺序不能反,比如之前遇到的 group  by 必须在 order by  之前,否则报错:access violation.......不是原生语句不用管顺序,但是应该养成好习惯。
  • 相关阅读:
    二级缓存配置和原理
    延迟加载
    proxy和no-proxy的策略取值的区别
    inverse理解
    Java Spring mvc 操作 Redis 及 Redis 集群
    章节6 关联映射 (转载)
    8.28笔记
    8.26函数相关练习
    8.26 课堂自由笔记 还有考皮的老师笔录
    大话设计模式1.0.2-----策略模式 单一职责原则 和 开放-封闭原则
  • 原文地址:https://www.cnblogs.com/bneglect/p/10408587.html
Copyright © 2020-2023  润新知