数据库的简单了解

数据库

  • 数据库存放数据的仓库
    • 方便存储快速查找
    • 数据按照一定格式可为用户共享
  • DataBase数据库单词
  • 数据库管理系统
    • MySQL被甲骨文收购,开源代码安全性不高,源代码容易修改,有些公司可以对MySQL进项重构,就可以变成不开源版,让数据有了保障
    • oracleMySQL中的漏洞都被修复了,比MySQL好用,安全性高
    • sqlserver是微软公司的一般不会去用了解一下就行
  • 数据库是数据库管理系统创建的
  • 数据库系统
    • 数据库应用程序让任何人都可以使用数据库
    • 数据库管理员
    • 管理系统
    • 用户
    • 数据库管理员
    • 数据库
  • 数据库的好处
    • 提供稳定性
    • 数据共享稳定
    • 数据库支持并发
    • 高效率数据量越大速度越明显
  • MySOL关系型
    • 优点
      • 易于维护
      • 使用方便可以复杂查询
      • 可以用于多个表之间复杂查询
    • 缺点
      • 数据多了读写性能变差
      • 固定的表结构,不能使用其他结构,缺少灵活性
      • 并发读写,在硬盘执行io操作回降低效率
  • 数据库的部分
    • 查询
      • select
    • 操作
      • insert,update,delete
      • CREATE DATABASE 数据库名字;创建数据库
      • DROP DATABASE 数据库名字;千万不能用
      • SHOW DATABASES;显示当前所有的数据库
      • USE 数据库名称 切换数据库
      • ALTER TABLE 表名字,改变表
      • ADD添加一行
    • 定义新的表
      • CREATE TABLE stu(
      • NAME字符串VARCHAR,
      • 整形INT,
      • sex VARCHAR(存放字符的数量),
  • 数据类型(常用)
    • INT整形
    • 小数decimal
    • VARCHAR,0-65535没有到达长度输入多少就是多少
    • char固定长度,长度范围为0-255,没有达到255后面回补充空格
    • ENUM枚举(定义的内容)
    • set集合(定义的内容)
      • 集合可以选多个但是不能多个字符串
      • 定义类型不能重复的
      • 放重复值会去重
    • data time
    • time tiem
    • 主键
      • 主键不能作为修改更新
      • 每个行都必须有一个主键值
      • 主键值都不会相同
  • 操作代码
    • use 数据库名
    • SHOW TABLES 查询所有的表
    • SHOW DATABASE 查询所有的数据库
    • alter table 表名 add 旧字段 新字段 数据类型 修改表名
    • alter table 表名 add 字段 直接写你想改变的数据类型
    • rename table 旧字段 to 新字段
    • select *from 表名查看当前表内所有内容
  • alter table 字段 = 新内容 where 筛选条件
    • insert into 表名 values()插入新的字段
    • insert into 表名 (字段)valuer()插入的字段
    • id int primary key创建主键
    • id int primary key auto_increment
      • 自增是不放值就自增
      • 放值了就会写放入的值而且不最动补位
      • 自增的话会按照最大的值去增加
      • 每一个表里面只能有一个主键,不能有多个主键。
    • select 字段,字段, from 表名查询单个
    • select 表类名+105 as(给当前字段起别名) 别名 做修改 from 表名
    • 只要是select ,任何操作对表没有任何影响只是显示的做出改变
    • select distinct(去重)字段,字段 from 表名
      • 两个字段加起来没有重复的就可以
    • drop table 表名
    • desc 名 查看表结构
    • rename table 表名 to 新表名
    • update 表名 set 字段名 where 字段名 = 筛选条件
    • delete from 表名 where 筛选条件指定删除
    • order by 字段 排序
      • 根据什么排序
      • 可以放两个字段两次排序
      • 可以加desc在字段后面加 倒叙排
    • select *from 表名 where 条件1 and (条件二 or 条件三)
    • like 模糊查询
      • _一个字
      • __两个字
      • % 无限定
      • 如果没有写百分号,like的作用就是和等于号一样
    • limit(9,6)划分
      • 9,6其实就是10-15行
    • count()统计
      • count(*)
      • count(字段名)
    • max ()最大值
    • min()最小值
    • avg()平均
    • sum()求和
    • concat(第一个列名,第二个列名)拼接
    • left (字符串,3)从左截取三个字符
    • right(字符串,3)从右边截取
    • select substring(字符串,23指定位置截取)
    • ltrim(str)去除左边空格
    • rtrim(str)去除右边空格
    • trim
    • replace替换字符串内容
    • lower
    • upper
    • abs绝对值
    • mod 求余数
    • floor向下取整
    • ceiling向上取整
    • round四舍五入
    • round(345.64989,2)=345.64保留小数点后两位
    • round(345.64989,-2)回整数
    • where 必须放在 group by前面
    • where 后面不能放聚合函数
    • distinct去重查询
    • modify 该数据的类型
    • not null不能为空
  • 表的约束
    • 必须先删子表才能删除父表中的内容
  • 索引
    • create index 索引名字 on 表名(字段)
    • 索引不能给整个表加
    • 只能给某个字段加索引
  • 视图
    • create view 试图名(放查询语句)添加视图
    • drop view 视图名删除视图
  • 事务
    • begin开始事务
    • rollback回滚
    • commit确定提交数据库
    • commit以后不能rollback
    • rollback之后commit没有任何作用
    • unique保证唯一
  • pychon中做修改了必须要写commit
原文地址:https://www.cnblogs.com/ziweijun/p/12821622.html