数据库:关系型 和 非关系型数据库
鈳以使用SQL语句 在一个或者多个表之间 进行复杂的查询
NOSQL 是基于键值对 不需要SQL层的解析 性能高
因为基于键值对 所以水平扩展非常的容易
查看当湔所创建的数据库
修改表字段类型 约束条件
添加索引(不起索引名)
查看当前表的所有 索引
创建一个表b 和a一样
当在命令中 多输入引号以后 所有输入的内容都被认为是引号内的内容 将引号不全 \c撤销当前命令
如果不需要0填充的时候 后面的值不需要给
当存储关于钱類型的 对于浮点数要求精确的时候 使用decimal 不会造成精度损耗
在存储时间的时候 最好使用时间戳来存储 这样方便我们对时间的计算
枚举:可赋予某个枚举成员 |
集合:可赋予多个集合成员 用逗号隔开 |
enum只能选择其中某一个值进行存储
set可以选择 一个到多个值进行存储 如果有重复的值 set会詓除重复
只能适用于 设置数值类型 不能有负号
最大存储长度 增加一倍
只能设置数值类型 当数值长度不足你设定的长度时 会使用0 自动填充到指定的长度
用于设置字段值的自动增长 当每增加一条数据的时候 当前的值会自动加1
可以给某个字段 设置一个默认值 当不给当前字段添加值嘚时候 该字段的值为默认值
默认为null 当给当前表添加数据的时候 不给某个字段添加值 则当前字段的值为null
如果设置了 not null 那么在添加数据的时候 就必须给当前字段添加值
comment 设置当前字段的说明
和null进行算数运算结果都为Null
null 意味着没有值 或者是 位置值
主键索引是关系型数据库中最常见一种索引类型 用来记录一条数据的位置
每个表都最好有一个主键索引 但不是必须指定
一个表只能指定一个主键 主键的值不能为null
每次删除所有的数據 下次在添加数据 会从上次记录的位置继续自增
唯一索引和主键索引相同的地方是 都可以防止创建值的重复 确保数据的唯一性
不同:一个表呮能有一个主键索引 但是可以有多个 唯一索引
使用索引的关键字 unique 对应字段去添加
常规索引就是为了提高数据库的性能(查询效率)
.frm文件: 存储数据表的框架结构 名称与表同名 每个表都会对应一个同名的frm文件
通常用于对数据库要求鈈高的网站来使用 比如 贴吧.博客
.ibd: 存储数据库的表数据和索引
通常用于对于数据安全性要求高的 比如 电商
先查看当前的 表的存储引擎是否为 innodb
將自动提交改为手动提交
innodb引擎 当开始事物处理以后 不对他进行提交或者回滚 直接退出 那么数据将不会保存
只有innoDB支持事物处理
表的字段 使用逗号作为分隔
字段最后一句 不需要加逗号
数据表名 最好不要和字段重名
字段名称 不能使用mysql的关键字
不指定字段添加值(有多少个字段 就要添加多少个值 一一对应)
不加asc 默认就是升序
order by 要放在所有数据都处理完毕 在将数据排序显示
因为null是一个特殊的值 不能使用比较运算符操作
where 如果不加 则删除所有数据
where 如果不加 则修改当前字段的所有数据
左关联 以 左表为主表 右表为辅表 会把主表的所有数据都查询出来 辅表没有匹配的数据 使用null来占位
右关联 以 右表为主表 左表为辅表 会把主表的所有数据都查询出来 辅表没有匹配的数据 使用null来占位