MYSQL基础操作

1. 数据库介绍

概念:  数据存储的仓库

存储介质:  磁盘

2. 为什么不用文件存储数据?

  • 文件的安全性低
  • 文件不利于数据查询和管理
  • 文件不利于存储和查询海量数据
  • 文件在程序中不方便控制

3. 数据库基本操作

sql -- 结构化查询语句:  有具体的格式和语法规则

   1.每一条sql语句都要以一个英文分号结束

   2.库表字段名称不能使用关键字,  如果非要使用则需要使用``括起来

   3.sql中不区分大小写

库的操作

   查看:  show databases;

   创建:  create database dbname;

             create database if not exists dbname;

   使用:  use dbname;

   删除:  drop database dbname;

   查看当前使用的数据库:   select database();

数据类型

   整形:  bit(16),  int  ,bigint

   浮点型:  float(m,d),  double(数字个数,数字中小数个数)          666.6 --> double(4,1)

                decimal(m,d)  比较常用,  不容易精度损失

   字符串型:  varchar(32)  可变长度字符串,  32指最多存储32个字符,     text  长文本类型

   日期型:  datetime

表的操作

   创建:  create table student(name varchar(32), age int, sex varchar(32));

             create table if not exists student(name varchar(32), age int, sex varchar(32));

   查看:  show tables; 

   描述:  desc student;

   删除:  drop student;

 表中数据的增删改查

  查询表中数据:  select * from student;

  新增:  insert            insert student values(‘张三‘, 18,1);

                                 insert student(name, sex) value(‘李四‘,1);

                                 insert student values(‘张三‘, 18,1),(‘王五‘,19,0);

  修改:  update          update student set sex=0 where name=‘张三‘;

  删除:  delete           delete from student where name=‘张三‘;

查询:

   指定列查询:  select sex,name from student;

   查询字段为表达式 + 起别名:  select height+weight hw from student;

   去重:  select distinct age from student;

   排序:  select * from student order by age desc,sex desc;(desc降序)(默认升序)

   分页查询:  limit

           select * from student order by age desc limit 3;   (查看前三条)

           select * from student order by age desc limit 3 offset 0;(从第0条往后3条)

    条件查询  where

                  关系运算符:   <,>,=,<=>,<=,>=,!=

                      select * from student where name=‘王五‘;

                  空值匹配:   is null;  is not null;

                      select * from student where name is null;

                  范围:  between...and...;

                      select * from student where age between 17 and 19;

                  子集匹配:  in(子集)

                      select * from student where name in (‘王五‘,‘赵五‘);

                  模糊匹配: like

                       select * from student where name like ‘%五%‘;

      逻辑运算符

             与:  双目,  and -- 连接两个比较条件,  两者同为真结果为真

                   select * from student where age>=17 and age<=19;

             或:  双目,  or -- 连接两个比较条件,  两者任意一个为真,  结果为真

                   select * from student where age>=17 or age<=19;             

             非:  单目,  not -- 针对单个比较条件,  条件为真结果为真

                    select * from student where not age>=19;

 

MYSQL基础操作

上一篇:Redis持久化——内存快照(RDB)


下一篇:Oracle使用记录