ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MySQL的基本使用(增删改查)

2021-09-17 22:59:58  阅读:125  来源: 互联网

标签:name -- 改查 查询 book MySQL 增删 id select


目录

一、优点

二、创建数据库和表

三、基本使用语法(增删改查) 

1. 增

2. 删

3. 改

4. 查


一、优点

  1. 简易:与其他大型数据库相比,MySQL 是一个相对简单的数据库系统,相对于小白容易上手
  2. 经济:与一些付费的数据库相比,MySQL可以免费使用这一点就很香
  3. 内存:MySQL数据库占用的内存仅仅几十mb,低配置电脑也能流畅运行
  4. 安全性:MySQL 数据库是完全网络化的,可在网上的任何地方访问,因此我们可以和任何地方的任何人共享同一个数据库。而且 MySQL 还能进行访问控制,可以控制哪些人不能看到自己的数据。
  5. 速度:MySQL的运行速度极快,在速度这方面完全可以击败市面上90%以上的数据库

二、创建数据库和表

  1. 语法为:create database 库名,下面是创建一个名为book的数据库
    create database book;
  2. 使用数据库
    use book;
  3. 创建一张数据表,例如:
    -- 创建名为book的表
    create table book(
    id int primary key, -- 第一个字段,书本的ID字段,数据类型为int 
    name varchar(20), -- 第二个字段,书本的名字(name)字段,数据类型为String,
    price double(6,2) -- 第三个字段,书本的价格(price)字段,数据类型为double
    )

    表中的属性(部分):
    a. 数据类型:根据自己的需要来进行选择,一般为(int,string,double),对应的sql类型为(int,varchar(字段的长度),double),Boolean等类型用的较少
    b. primary key:设置主键,一般用作id,是唯一值,当同一张表中为主键的id相同时,会运行报错
    c. auto_increment:自动增长。默认从1开始,不适用于varchar()字段
    d.default:默认字段,语法为(name varchar(20) default '张三'),这样这张表的name字段内容就默认都是张三了,添加数据时会将张三覆盖

三、基本使用语法(增删改查) 

1. 增

  1. 普通的添加数据
    -- 此添加不要把表的字段设为主键
    insert into book values(1,'雪中悍刀行',39);
  2. 指定字段的添加
     
    -- 给name添加数据
    insert into book(name) values('雪中悍刀行');
    
    -- 给name,price添加数据
    insert into book(name,price) values('雪中悍刀行',39.99);
  3. 设置主键的添加,和指定字段的添加一样
    -- 如果主键没有自动添加则为0或者null,设置了自动添加则为1,2,3...
    insert into book(name,price) values('雪中悍刀行',39.99);

2. 删

  1. 删除数据库
    -- 删除名为book的数据库
    drop database book;
  2. 删除表
    -- 删除名为book的表
    drop table book;
  3. 删除表中的数据
    -- 删除book表的所有数据
    delete from book;
    -- 删除单条数据,如删除id=1的一条数据
    delete from book where id = 1;
    -- 删除多条数据,如删除id=1,id=2,id=3的三条数据
    delete from book where id in(1,2,3);

3. 改

  1. 单个字段的所有数据
    -- 修改单个字段的所有数据,这样表中所有数据的name字段都为张三了
    update book set name='张三';
  2. 修改指定数据
    -- 修改id=1的name数据
    update book set name='雪中1' where id = 1;
    -- 修改id=1的name,price数据
    update book set name='雪中1',price=59.99 where id = 1;

4. 查

  1. 查询所有数据
    -- 查询book表所有数据
    select * from book;
  2. 精确查询name
    -- 根据name进行精确查询,如此只会查询出name='雪中悍刀行'的数据
    select * from book where name = '雪中悍刀行';
  3. 模糊查询name
    -- 根据name进行模糊查询,如此只会出现name字段包含‘雪’字的数据
    select * from book where name like '%雪%';
    -- 查询‘雪’字开头的数据
    select * from book where name like '雪%';
    -- 查询‘刀’字结尾的数据
    select * from book where name like '%刀';
    -- 查询‘雪’字开头且结果只有两个字的数据
    select * from book where name like '雪_';
    -- 查询‘中’字结尾且结果只有两个字的数据
    select * from book where name like '_中';
  4. 根据字段查询数据
    -- 查询name字段
    select name from book;
    -- 查询name,price字段
    select name,price from book;
  5. 查询在xx到xx之间的数据
    -- 查询id=1到7的数据
    select * from where id between 1 and 7;
  6. 连接查询
    -- 连接多张表进行查询,下面用两张表示例,如有需要可继续进行添加
    
    -- 创建book表(书本表)
    create table book(
    bid int primary key, -- book表的id,设为主键
    name varchar(20) -- book表的name
    )
    
    -- 创建client表(客户表)
    create table client(
    cid int primary key, -- climent表的主键
    cname varchar(20), -- climent表的名字
    bid int -- book表在climent表的外键,这样绑定外键便于删除表
    )
    
    -- 进行连接查询两张表,as为取别名,可写可不写
    select * from book as b
    inner join climent as c
    on c.bid = b.bid;
    -- 也可以不写as
    select * from book b
    inner join climent c
    on c.bid = b.bid;
    
    -- 根据book表的name进行数据的查询
    select * from book b
    inner join climent c
    on c.bid = b.bid
    where b.name = '雪中悍刀行';
    
    -- 查询两张表部分字段,如查询book表的name和climent表的cname字段
    select b.name,c.cname from book b
    inner join climent c
    on c.bid = b.bid;

以上是一部分MySQL基本操作,也是平常用的最多的操作 ,先写到这了,眼睛有点酸了

标签:name,--,改查,查询,book,MySQL,增删,id,select
来源: https://blog.csdn.net/qq_51511073/article/details/120356990

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有