什么是数据库
    存储数据的仓库
MySQL特点
    1、关系型数据库
      1、数据以 行和列(表) 的形式去存储的
      2、表中行:一条记录  列:一个字段
      3、表和表之间的逻辑关联叫关系
      2、示例
        1、关系型数据库存储
        表1、学生信息表
      姓名    年龄   班级
      星矢     25    三班
      水冰月   23    六班
        2、非关系型数据库存储
          {"姓名":"星矢","年龄":25,"班级":"三班","班主任":"大空翼"}
          {"姓名":"水冰月","年龄":23,"班级":"六班","班主任":"松人"}

2、MySQL安装
  1、Ubuntu安装MySQL服务
    1、安装服务端
      sudo apt-get install mysql-server
    2、安装客户端
      sudo apt-get install mysql-client
    3、Ubuntu安装软件
      1、sudo apt-get install update
      2、sudo apt-get -f install
        作用 :修复依赖关系

4、更改库的默认字符集
       1、方法 :更改配置文件
       2、步骤
          1、获取root权限
              sudo -i
          2、cd /etc/mysql/mysql.conf.d
          3、cp mysqld.cnf    mysqld.cnf.bak
          4、subl  mysqld.cnf
          5、在[mysqld]下的tmpdir = /tmp添加
                 character_set_server = utf8
          6、/etc/init.d/mysql restart

默认初始账户root,密码为空

3、启动和连接MySQL服务
  1、服务端启动
    1、查看服务状态
      sudo /etc/init.d/mysql status
      sudo /etc/init.d/mysql start
      sudo /etc/init.d/mysql stop
      sudo /etc/init.d/mysql restart
      sudo /etc/init.d/mysql reload
  2、客户端连接
    1、命令格式
      mysql -h主机地址 -u用户名 -p密码
      mysql -hlocalhost -uroot -p123456

# 本地登录可省略 -h 选项
        mysql -uroot -p
4、基本SQL命令
  1、SQL命令的使用规则
    1、每条命令必须以 ; 结尾
    2、SQL命令不区分字母大小写
    3、使用 \c 终止当前命令的执行
  2、库的管理  
    1、库基本操作
      1、查看所有库
        show databases;
      2、创建库(指定字符集)
        create database 库名 character set utf8;
      3、查看创建库的语句(查看字符集)
        show create database 库名;
      4、查看当前所在库
        select database();
      5、切换库
        use 库名;
      6、查看库中的表
        show tables;
      7、删除库
        drop database 库名;

3、练习
      1、创建库 testdb,指定字符集为 utf8
        create database testdb character set utf8;
      7、查看库 testdb2 中的所有表
        show tables;
      8、删除库 testdb
        drop database testdb;
      9、删除库 testdb2
        drop database testdb2;
  3、表的管理
    1、表的基本操作
      1、创建表(别忘了选择库,指定字符集)
        create table 表名(
    字段名 数据类型 default,
        字段名 数据类型,
        字段名 数据类型
    )character set utf8;
      2、查看创建表的语句(字符集、存储引擎)
        show create table 表名;
      3、查看表结构
        desc 表名;
      4、删除表
        drop table 表名;

4、注意
    ???所有数据都是以文件形式存储在数据库目录下/var/lib/mysql
  5、表记录管理
    1、插入(insert)
      1、insert into 表名 values(值1),(值2);
      2、insert into 表名(字段1,字段2) 
         values(值1),(值2);此方式可以对部分字段插入而无需对一个值的所有字段进行赋值(使用方法1的时候,遇到没有值的可以使用null)(值1*2代表输出值1的2倍值,可修改输出参数值)
    2、查询(select)
     select 字段1,字段2(若填*,则代表对所有字段显示) from 表名 where 条件;
   where 条件计算:

数值类型:  >,>=,<,<=,=,!=

字符类型: =,!=

7、数据类型
  1、数值类型
    1、整型
      1、int 大整型(4个字节)
    取值范围 :0 ~ (2**32 - 1) 42亿多
      2、tinyint 微小整型(1个字节)
        1、有符号(signed默认) : -128~127
    2、无符号(unsigned) : 0~255
      age tinyint unsigned,
      3、smallint 小整型(2个字节)
      4、bigint 极大整型(8个字节)
    2、浮点型
      1、float(4个字节,最多显示7个有效位)
        字段名 float(m,n) m->总位数 n->小数位位数
    float(5,2) 取值范围:-999.99 ~ 999.99
    ## m的值最大为7
      2、double
        字段名 double(m,n)
      3、decimal(m,n)
        1、存储空间(整数部分、小数部分分开存储)
      规则:将9的倍数包装成4个字节

余数     字节
        0        0
       1-2       1
       3-4       2
       5-6       3
       7-8       4
      例:decimal(19,9)
        整数部分:10/9=1余1  4字节+1字节=5
        小数部分:9/9=1余0   4字节+0字节=4
        总共 :9个字节

2、字符类型
    1、char :定长
      char(宽度) 宽度取值范围:1 - 255
    2、varchar :变长
      varchar(宽度) 宽度取值范围 :1 - 65535
    3、text / longtext(4G) /blob / longblob(二进制)
    4、char 和 varchar的特点
      1、char :浪费存储空间,性能高
      2、varchar :节省存储空间,性能低
    5、字符类型的宽度和数值类型宽度的区别
      1、数值类型宽度为显示宽度,只用于select查询时显示,和占用存储无关,可用zerofill查看效果
      2、字符类型的宽度超过后无法存储
  3、枚举类型
    1、单选enum
      sex enum(值1,值2,...)

插入的时候是"值1"
    2、多选set
      likes set(值1,值2,...)
      ## 插入记录时 "值1,值2......"

简述客户端把数据存储到数据库服务器上的过程???

mysql day 01相关推荐

  1. mysql查询01课程比02课程_小菜菜mysql练习解读分析2——查询存在 01 课程但可能不存在 02 课程的情况(不存在时显示为 null )...

    "查询存在" 01 "课程但可能不存在" 02 "课程的情况(不存在时显示为 null )" --翻译为:课程表里面,存在01的信息,未必满 ...

  2. MySQL实战 | 01 当执行一条 select 语句时,MySQL 到底做了啥?

    原文链接:当执行一条 select 语句时,MySQL 到底做了啥? 也许,你也跟我一样,在遇到数据库问题时,总时茫然失措,想重启解决问题,又怕导致数据丢失,更怕重启失败,影响业务. 就算重启成功了, ...

  3. 黑马程序员---MYSQL数据库---01

    一:数据库的特点: 1:持久化存储 2:读写速度极快 3:保证数据有效性. 数据库是来干啥的?? 存储和管理数据. 二:数据库的分类: 1:关系型数据库:MySQL ,SQL Server, Orac ...

  4. MySQL教程-01

    mysql mysql 创建数据表 删除数据表 插入数据 查询数据 返回所有数据 where子句 UPDATE更新 DELETE 语句 LIKE 子句 UNION 操作符 **UNION实例:** * ...

  5. mysql面试-01

    1.为什么索引可以加速查询? 索引是一个排序的列表,在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址,在数据十分庞大的时候,索引可以大大加快查询的速度,这是因为使用索引后可以不用扫描全表来 ...

  6. mysql limit 01怎么理解_MySQL limit实际用法的详细解析

    MySQLlimit的实际用法的详细解析,在我们使用相关的查询语句的时候,一般都要返回前几条或是中间的某几行数据,这时你应如何处理呢?不必担心,MySQL数据库已经为我们提供了这样一个功能. SELE ...

  7. mySQL数据库01

    关系型:具有一定关系.特定的数据结构,表 .   数据库->表->行.列         关系型数据库中的每一个对象数据结构都是相同的 SQL语句:结构化查询语句,用来操作关系型数据库的语 ...

  8. mysql查询01课程比02课程_小菜菜mysql练习解读分析1——查询” 01 “课程比” 02 “课程成绩高的学生的信息及课程分数...

    查询" 01 "课程比" 02 "课程成绩高的学生的信息及课程分数 好的,第一道题,刚开始做,就栽了个跟头,爽歪歪,至于怎么栽跟头的 --需要分析题目,查询的是 ...

  9. mysql查询01课程比02课程_practice01-数据库01---查询课程编号为01的学生比课程编号为02的学生成绩高的所有学生的编号...

    查询课程编号为01的学生比课程编号为02的学生成绩高的所有学生的编号 1. 首先建立数据表 建立四张数据表(, 成绩表(score)) 1. 学生表(students) 1.学生id  ----  s ...

最新文章

  1. Google、Intel、Uber等巨头如何布局AI?听听他们自己人怎么说
  2. 我们工作到底为了什么(这篇文章很重要)----强烈推荐
  3. MIPI CSI-2学习
  4. mysql1440秒未活动_phpMyAdmin登陆超时1440秒未活动请重新登录
  5. 【Qt】qt库结构及示例
  6. CentOS7.2安装jdk7u80
  7. ThinkPHP实现登陆功能
  8. ORACLE数据库 基础练习表EMP\DEPT \SALGRADE脚本
  9. 同步图计算:GraphLite的安装和使用
  10. MySQL 入门(六)—— 索引
  11. 计算机网络工程师考试要考哪些,网络工程师考试科目是什么
  12. c语言程序最简单例子,简单C语言程序的例子
  13. 2018美国大学计算机科学,美国大学计算机2018最新排名
  14. tp5模板使用php函数,tp5模板变量使用自定义函数
  15. 上海牌照(沪牌)拍牌,软件,手动
  16. 十个 Python 自动化常用操作
  17. java使用poi,将xls文件转换为xlsx文件
  18. 必备技能:图解用电烙铁焊接电路
  19. 天猫30个店铺签到领喵币代码 亲测可用
  20. 炒股赚钱最重要的是炒股心态和纪律

热门文章

  1. 基于SAE特征融合的合成孔径雷达图像的目标识别
  2. 分库分表之MyCat详解
  3. 大学生创新创业万学答案(二)
  4. 如何使用Python进行图形化编程
  5. js中的直接赋值和引用赋值
  6. 当前时间实时刷新js
  7. 中国道路、居民地、面状水系、铁路、线状水系
  8. php查拼音,PHP-Pinyin
  9. R语言中实现线性回归+l_0范数变量选择的包abess
  10. react组件类型及深入理解react高阶组件