• MySQL基础入门使用和命令的使用


    数据库了解

    • 概念
      • 数据库就是一种特殊的文件,其中存储着需要的数据
      • 一个数据库可以有多张表
      • MySQL是一种关系型数据库
        • 具有关联性数据的就是关系型数据库
      • MySQL是一种软件可以用来创建mysql数据库
      • MySQL也是C/S构架(底层TCP)
        • MySQL客户端
          • 客户端连接服务端使用TCP协议连接
          • 使用时SQL语句操作
        • MySQL服务器
          • MySQL服务器操作数据库
    • 数据库优点
      • 持久化存储
      • 读写速度高
      • 保存速度有有效性
      • 对程序支持非常好,容易扩展
    • 数据库词汇
      • 列:字段
      • 行:记录
      • 表:记录的集合
      • 主键:唯一标记一行记录的
      • 外键:对于一张表中某个字段的值是另一张表的主键的值
    • 常见的关系型数据库及底层了解
      • RDBMS
        • 是一种程序的简称,分为关系型数据库和非关系型数据库
      • 关系型数据库
        • MySQL(常用与制作网站)
          • 常用版本:5.1 5.6 5.7 5.8
        • sqlite
        • Oracle
          • 常用版本 Oracle 10g Oracle 11g
        • sqlserver(Microsoft)
        • db2(IBM)
      • 非关系型数据库
        • redis(处理缓存)
        • mangodb(存储非关系型数据)

    SQL语言概念

    • SQL语句是一种结构化查询语句,可以用来操作RDBMS数据库语言
    • sql语句分类
      • DQL查询
        • select
      • DML操作
        • insert update delete

    MySQL基础操作

    • 安装
      • ubuntu:
        • sudo apt-get install mysql-server(服务端)
        • sudo apt-get install mysql-client(客户端)
    • 启动
      • sudo service mysql start
    • 暂停
      • sudo service mysql stop
    • 重启
      • sudo service mysql restart
    • 配置文件
      • /etc/mysql/mysql.conf.d/mysqld.cnf

    MySQL的主要数据类型和约束

    数据类型

    • 整数型

      • int
      • bit
    • 小数

      • decimal
        • decimal(5, 2),表示一共存5位数,小数占2位
    • 字符串

      • varchar
      • char
        • char(3)表示固定长度的字符串,长度不够会用空格补全,不可以超过3个字符
      • varchar
        • varchar(3)填充ab就会存储ab,不可以超过3个字符
    • 时间类型

      • data, time, datatime
    • 枚举类型

      • enum
        • 比如性别,代表只有固定的类型让人选择
    • test类型

      • 当字符大于4000之后推荐使用
    • ps:

      • 对于图片,音频,视频等文件,不存储在数据库中,而是上传到服务器中,数据库只保存文件的保存路径

    约束

    • 约束是用来限制每一个字段的

    • 主键primary key

      • 物理上存储的顺序
    • 非空not null

      • 此字段不允许为空
    • 外键

    • 数值类型

      • tinyint 1个字节,0-255
      • smallint 2个字节 0-65535
      • mediumint 3个字节
      • int/integer 4个字节
      • bigint 8个字节
    • 字符串

      • char
      • barchar
      • text

    用命令来操作数据库

    数据库连接

    • mysql -uroot -pmysql
    • mysql -uroot -p (这种方式需要写密码)

    退出数据库

    • quit/exit/ctrl+d

    查看数据库

    • show databases;

    显示时间

    • select now();

    显示版本

    • select version();

    创建数据库

    • create database python;(创建一个名称为Python的数据库)
    • create database pythonnew charset=utf8;(创建一个字符集为utf8编码名称为pythonnew的数据库)

    删除数据库

    • drop database python;(删除名称为Python的数据库)

    使用数据库

    • use 数据库名称

    查看当前使用数据库

    • select database();

    数据表操作

    • 显示数据库所有的表
      • show tables;
    • 创建一个数据表
      • create table xxxxx(id int, name varcharm(30)); # 一个逗号创建一个字段
      • create table xxxxx(id int primary key not null auto_increment, name varcharm(30)); # 添加约束在每一个字段后面加上约束
      • 案例创建一个students表(id,name,age,high,gender,cls_id)
    create table students(
                id int unsigned not null auto_increment parimary key,
                name varchar(30),
                age tinyint unsigned defult 0,
                high decimal(5,2),
                gender enum("男","女") default "男",
                cls_id int unsigned
    
    • ps:

      • 创建表顺序(字段名 类型 约束)
    • desc 数据表的名字;(可以快速查看表结构)

    数据表字段结构的的增删减查

      • alter table students add birthday datetime;
      • alter table 表名
      • drop table 表名
      • alter table 表名 modify brithday data; 不重名
      • alter table 表名 change brithday birth date default '1990-01-01'; 重名

    ps:
    show create table students; # 可以查看创建这个数据表的SQL语句

    数据的增删改查

    • 增:
      • insert into 表名 values(....)
      • insert into 表名 values(....),(....)
      • insert into 表名(字段,字段) values (值1, 值2)
      • insert into 表名(字段,字段) values (值1, 值2),(值1,值2)
      • ps:
        • 枚举中数字1代表
    • 改:
      • update 表名 set 字段=值 (直接修改全部字段)
      • update 表名 set 字段=值 where name=值 (在满足where后面的条件,一般用主键来判断来指定修改)
      • update 表名 set 字段=值,字段2=值 where name=值 (一次修改多个值)
    • 查询
      • select 指定字段 from 表名 (*代表所有的字段)
      • select 指定字段 as 命名 from 表名 (可以修改字段的名称显示出来)
      • truncate students;(清空表)
      • delete from 表名; (删除表的所有内容)
      • delete from 表名 where id<6; (指定删除)
      • 不要去删除数据,可以添加字段来逻辑删除
        • alter table students add is_delete bit default 0;
        • update students set is_delete=1 where id=6;
  • 相关阅读:
    Mockito 简明教程
    说说初用 Mock 工具测试碰到的坑
    java的mock测试框架
    使用模拟对象(Mock Object)技术进行测试驱动开发
    微信小程序
    微信小程序
    uniapp
    微信小程序
    微信小程序
    微信小程序
  • 原文地址:https://www.cnblogs.com/fandx/p/12124686.html
Copyright © 2020-2023  润新知