zoukankan      html  css  js  c++  java
  • MySQL总结

    mysql数据库

    字段类型

    • 在mysql中包含的数据类型很多,这里主要列出来常用的几种
    • 数字:int(整数),decimal(浮点数)
    • 字符串:char(不可改变字符数),varchar(有限长度,可变字符       数),text(大文本)
    • 约束

      • 主键primary key(only 1)
      • 非空not null
      • 惟一unique
      • 默认default
      • 外键foreign key
      • 使用命令连接

        • 命令操作方式,在工作中使用的更多一些,所以要达到熟练的程度
        • 打开终端,运行命令
        mysql -uroot -p
        回车后输入密码,当前设置的密码为mysql
        • 连接成功后如下图
        • 退出登录
        quit或exit
        • 登录成功后,输入如下命令查看效果
        查看版本:select version();
        显示当前时间:select now();
        • 注意:在语句结尾要使用分号;
        • 远程连接

          • 一般在公司开发中,可能会将数据库统一搭建在一台服务器上,所有开发人员共用一个数据库,而不是在自己的电脑中配置一个数据库
          • 运行命令
          mysql -hip地址 -uroot -p
          • -h后面写要连接的主机ip地址
          • -u后面写连接的用户名
          • -p回车后写密码

          数据库操作

          • 查看当前所有数据库
          show databases;
          • 创建数据库
          create database 数据库名 charset=utf8;
          • 删除数据库
          drop database 数据库名;
          • 切换数据库
          use 数据库名;
          • 查看当前选择的数据库
          select database();

          表操作

          • 查看当前数据库中所有表
          show tables;
          • 创建表
          • auto_increment表示自动增长
          • create table 表名(列及类型); 如: create table students( id int auto_increment primary key, sname varchar(10) not null );
          create table 表名(键 类型 自增 主键 非空)
                  create table students(
                  id int auto_increment primary key not null, #主键形式一致
                  name varchar(10) not null,
                  birthiday datetime,
                  gender bit default 1,
                  isDelet bit default 0
                  );
           
          • 修改表
          alter table 表名 add|change|drop 列名 类型;
          如:
          alter table students add birthday datetime;
          • 删除表
          drop table 表名;
          • 查看表结构
          desc 表名;
          • 更改表名称
          rename table 原表名 to 新表名;
          • 查看表的创建语句
          show create table '表名';

          数据操作

          • 查询
          select * from 表名;
          • 增加
          全列插入:insert into 表名 values(...)
          缺省插入:insert into 表名(列1,...) values(值1,...)
          同时插入多条数据:insert into 表名 values(...),(...)...;
          或insert into 表名(列1,...) values(值1,...),(值1,...)...;
          • 主键列是自动增长,但是在全列插入时需要占位,通常使用0,插入成功后以实际数据为准
          • 修改
          update 表名 set 列1=值1,... where 条件
          • 删除
          delete from 表名 where 条件
          • 逻辑删除,本质就是修改操作update
          alter table students add isdelete bit default 0;
          如果需要删除则
          update students isdelete=1 where ...

          总结

          • 完整的select语句
          select distinct *
          from 表名
          where ....
          group by ... having ...
          order by ...
          limit star,count
          • 执行顺序为:
            • from 表名
            • where ....
            • group by ...
            • select distinct *
            • having ...
            • order by ...
            • limit star,count
          • 实际使用中,只是语句中某些部分的组合,而不是全部

           

           

          备份与恢复

          数据备份

          • 进入超级管理员
          sudo -s
          • 进入mysql库目录
          cd /var/lib/mysql
          • 运行mysqldump命令
          mysqldump –uroot –p 数据库名 > ~/Desktop/备份文件.sql;
          按提示输入mysql的密码

          数据恢复

          • 连接mysqk,创建数据库
          • 退出连接,执行如下命令
          mysql -uroot –p 数据库名 < ~/Desktop/备份文件.sql
          根据提示输入mysql密码
           
          创建数据库:create database 数据库名 charset=utf8;
          创建表:create table 表名 (字段 类型 约束);
                      id int auto_increment primary key not null,
          插入数据:insert into 表名 (...) vakues(...);
          修改数据:update 表名 set 字段名=值 , .....
          删除数据:delete from 表名;
                              逻辑删除: 添加isDelete 字段,然后作修改
          查询表:select*from 表名
  • 相关阅读:
    红线行动开发文档
    团队作业1
    第二次作业:安装VS2015和使用自动测试管理工具
    简单介绍VS2015自动测试工具
    软件工程作业(一)
    三带一队 实验十 团队作业6:团队项目用户验收&BETA冲刺
    《三带一队》【Beta】Scrum meeting 4
    《三带一队》【Beta】Scrum meeting 3
    《三带一队》【Beta】Scrum meeting 2
    《三带一队》【Beta】Scrum meeting 1
  • 原文地址:https://www.cnblogs.com/haomingyueyue/p/10650090.html
Copyright © 2011-2022 走看看