MySQL基础——对数据库和表进行增删改查

MySQL——概念介绍和CRUD操作

1、SQL概念

1.什么是SQL?
  • Structured Query Language结构化查询语言 ,其实就是定义了操作所有关系型数据库的规则。每一种数据库操作的方式存在不一样的地方,称为“方言”。
2.SQL通用语法
  1. SQL 语句可以单行或多行书写,以分号结尾;
  2. 可使用空格和缩进来增强语句的可读性;
  3. MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写;
  4. 注释
  • 单行注释: – 注释内容(两个横杠,一个空格)或 #注释内容(mysql 特有)(#号面可以不加空格)
  • 多行注释: /* 注释内容 */
3.SQL分类
  • DDL(Data Definition Language)数据定义语言
  • 用来定义数据库对象:数据库,表,列等。关键字:create, drop,alter 等
  • DML(Data Manipulation Language)数据操作语言
  • 用来对数据库中表的数据进行增删改。关键字:insert, delete, update 等
  • DQL(Data Query Language)数据查询语言
  • 用来查询数据库中表的记录(数据)。关键字:select, where 等
  • DCL(Data Control Language)数据控制语 言(了解)
  • 用来定义数据库的访问权限和安全级别,及创建用户。关键字:GRANT, REVOKE 等

在这里插入图片描述

2、DDL操作数据库、表

  • DDL(Data Definition Language)数据定义语言
1、对数据库进行CRUD
1.C(Create)创建
条件语句
创建数据库create database 数据库名称;
创建数据库,判断不存在,再创建:create database if not exists 数据库名称
创建数据库,并指定字符集* create database 数据库名称 character set 字符集名;
创建db4数据库,判断是否存在,并制定字符集为gbk* create database if not exists 数据库名称character set gbk
2.R(Retrieve):查询
条件语句
查询所有数据库的名称show databases
查询某个数据库的字符集:查询某个数据库的创建语句show create database 数据库名称
3.U(Update):修改
条件语句
修改数据库的字符集* alter database 数据库名称 character set 字符集名称;
4. D(Delete):删除
条件语句
删除数据库drop database 数据库名称;
* 判断数据库存在,存在则删除drop database if exists 数据库名称;
5.使用数据库
条件语句
选择数据库use 数据库名称;
查询当前正在使用的数据库名称select database();
2、对表进行CRUD
  • 创建表
  create table 表名(
                    列名1 数据类型1,
                    列名2 数据类型2,
                    ....
                    列名n 数据类型n
                );
  • 注意:最一列不需要加逗号(,)

  • 数据类型

    • int:正数类型

      age int
      id  int
      
    • double:小数类型

      score double
      -- 表示运算到5位小数,小数点保留2位有效数字
      score double(5,2)
      
    • date:日期 ( 只包含年月日,yyyy-MM-dd )

    • datetime:日期,包含年月日时分秒 yyyy-MM-dd HH:mm:ss

    • timestamp:时间类型 包含年月日时分秒 yyyy-MM-dd HH:mm:ss

    • varchar: 字符串

    name varchar(20):姓名最大20个字符
    
1. C(Create):创建表
idnameagescorebirthdayinser_time
  create table student(
                    id int,
                    name varchar(32),
                    age int ,
                    score double(4,1),
                    birthday date,
                    insert_time timestamp
                );
  • 复制表
  *create table 表名 like 被复制的表名;          
2. R(Retrieve):查询
  • 提醒:查询表前应该先选中数据库,再进行操作

    条件语法
    查询某个数据库中所有的表名称show tables;
    查询表结构desc 表名;
    查询某个数据库中指定的表名称show create table 表名
3.U(Update):修改(最常用)
条件语法
修改表名alter table 表名 rename to 新的表名
修改表的字符集alter table 表名 character set 字符集名称;
添加一列alter table 表名 add 列名 数据类型;
单修改列类型alter table 表名 modify 列名 新数据类型;
修改列名称和数据类型alter table 表名 change 列名 新列名 新数据类型
删除列alter table 表名 drop 列名;
4.D(Delete):删除
drop table 表名;
drop table  if exists 表名 ;

3、 DML增删改表中数据

  • DML(Data Manipulation Language)数据操作语言
1、向表中添加数据
  • 提示:先创建表,才能再表中添加数据

  • 语法

    -- 添加指定列数据
    insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n);
    
    -- 添加所有列数据时,可以不写列明
    insert into 表名 values(值1,值2,...值n);
    
  • 注意:

    1. 列名和值要一一对应。
    2. 如果表名后,不定义列名,则默认给所有列添加值
    3. 除了数字类型,其他类型需要使用引号(单双都可以)引起来,日期也要加引号,以-分开
2.删除表中数据
  • 语法

    delete from 表名 [where 条件]
    
  • 注意:

    1. 如果不加条件,则删除表中所有记录
  • 删除表中所数据

    1. 不推荐使用 delete from 表名 ,原因:该方式是一条一条进行删除的,有多少条记录就会执行多少次删除操作。
    2. 推荐使用 TRUNCATE TABLE 表名 ,原因:该语句是先删除整个表,然后再创建一张一摸一样的空表。
3.修改表中数据
  • 语法

    update 表名 set 列名1 = 值1, 列名2 = 值2,... [where 条件]
    
  • 注意:如果不加任何条件,将会将表中的所有记录全部修改

4、DQL查询表中的数据

1、语法
   -- 复杂的查询语法
   select
            字段列表     
        from
            表名列表  //(多个表用 ,分隔)
        where
            条件列表   //(写多个条件)
        group by      
            分组字段
        having
            分组之后的条件
        order by
            排序
        limit
            分页限定
2、基础查询
1.全查询
select * from 表明
2.多个字段查询
 -- 语法
 select 字段名1,字段名2... from 表名;
  
  -- 示例再stu表中查询 id和name
     SELECT id,NAME FROM stu;
3.去重复查询
  • 关键字:distinct

    -- 示例:查询姓名(不重复)
    SELECT DISTINCT NAME FROM stu; 
    
4.查询计算列的值
  • 使用四则运算法则计算列的值

    -- 查询name、math、English和(math+English)的值
    SELECT name,math,English ,math+English FROM stu
    
  • 关键字:ifnull(表达式1,表达式2):null参与的运算,计算结果都为null

  • 作用:进行判断值是否位null(因为null和任何值进行运算都为null),如果为nill则转换为设定值

-- 进行查询,如果English值为null,则将null提换位0
SELECT name,math,English ,math+ifNULL(English,0) FROM stu
5.起别名查询
  • 关键字:as(可以省略)

    -- 将相加后的列表名(math+English)称改为总分
    SELECT name,math,English ,math+ifNULL(English,0) as  总分 FROM stu
    
3、条件查询
  • 运算符
    • > 、< 、<= 、>= 、=(一个等于号) 、<> 或 !=
1. 查询连续字段
  • 关键字:BETWEEN…AND
-- 查询id 1到3(不包括)的信息
SELECT * FROM stu WHERE id BETWEEN 1 AND 3;
  • 注意:查询的值包括前面的值,但是不包括后面的值。
2.查询不连续字段
  • 关键字: IN
-- 查寻id=1和id=3的信息
SELECT * FROM stu WHERE id IN(1,3);
3.模糊查询
  • 关键字:LIKE
    • _:单个任意字符
    • %:0或多个任意字符
-- 若要找姓名中含有马的人
SELECT * FROM stu WHERE name LIKE   '% 马 % ';

--  查询姓马的人
SELECT * FROM stu WHERE name LIKE   '马 % ';
4.查询数据为空的字段
  • 关键字:IS NUll
--  查询birthday为空的信息 (null不能=判断)
SELECT * FROM stu WHERE birthday IS NULL;
  • 注意:不能使用=号
5.查询数据不为空的字段
  • 关键字:ID NOT NULL
-- 查询不为空
SELECT * FROM stu WHERE birthday IS NOT NULL;
  • 注意:不能使用=号
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL数据库是一种关系型数据库,可以用于存储和管理大量数据,而增删改查数据库操作的四个基本功能。下面分别介绍这四种操作: 1. 增加数据:在MySQL数据库中,可以通过insert语句将新数据添加到表中。例如,可以使用以下语句将一个新用户插入到users表中: insert into users (id, username, password) values (1, 'john', 'password123'); 这将在表中添加一个id为1,用户名为john,密码为password123的新用户。 2. 删除数据:在MySQL数据库中,可以使用delete语句删除表中满足条件的数据。例如,可以使用以下语句删除所有购物车中商品数量为0的记录: delete from shopping_cart where quantity = 0; 这将从表中删除所有购物车中数量为0的商品记录。 3. 修改数据:在MySQL数据库中,可以使用update语句修改表中满足条件的数据。例如,可以使用以下语句将用户的密码修改为新密码: update users set password = 'newpassword123' where id = 1; 这将把id为1的用户的密码修改为newpassword123。 4. 查询数据:在MySQL数据库中,可以使用select语句查询表中符合条件的数据。例如,可以使用以下语句查询所有用户的用户名和密码: select username, password from users; 这将查询出用户表中所有用户的用户名和密码。 总之,MySQL数据库的四种基本操作——增加、删除修改和查询数据,是应用开发中最常见的数据库操作,掌握这些操作对于开发一个高效的应用程序非常重要。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值