记录:MySql数据库(十) MySql数据库之表的增删改操作

一. 增加(插入)
1. 语法:

1. insert into 表名(字段名,...) values(值,...); // 推荐使用
2. insert into 表名 set 字段=值,字段=值,...;

2. 特点:

1、要求值的类型和字段的类型要一致或兼容
2、字段的个数和顺序不一定与原始表中的字段个数和顺序一致
但必须保证值和字段一一对应
3、假如表中有可以为null的字段,注意可以通过以下两种方式插入null值
①字段和值都省略
②字段写上,值使用null
4、字段和值的个数必须一致
5、字段名可以省略,默认所有列

二. 修改
1. 语法:

1. update 表名 set 字段=值,字段=值 【where 筛选条件】;

//级联修改,修改多表。
2. update 表1 别名 

    left|right|inner join 表2 别名 
    on 连接条件  
    set 字段=值,字段=值 
    【where 筛选条件】;

三. 删除
1. 语法:

1. delete from 表名 【where 筛选条件】【limit 条目数】

// 级联删除,多表删除。
2. delete 别名1,别名2 from 表1 别名 
    inner|left|right join 表2 别名 
    on 连接条件
【where 筛选条件】

3. truncate table 表名

2. 二者的区别:

1.truncate删除后,如果再插入,标识列从1开始
  delete删除后,如果再插入,标识列从断点开始
  
2.delete可以添加筛选条件
  truncate不可以添加筛选条件
  
3.truncate效率较高

4.truncate没有返回值
  delete可以返回受影响的行数

5.truncate不可以回滚


  delete可以回滚四. 增删改SQL代码演示

#1.    创建表 my_employees
USE myemployees;
CREATE TABLE my_employees(
    Id INT(10),
    First_name VARCHAR(10),
    Last_name VARCHAR(10),
    Userid VARCHAR(10),
    Salary DOUBLE(10,2)
);
CREATE TABLE users(
    id INT,
    userid VARCHAR(10),
    department_id INT
);

#2.    显示表 my_employees的结构
DESC my_employees;

#3.    向 my_employees表中插入下列数据
ID    FIRST_NAME    LAST_NAME    USERID    SALARY
1    patel        Ralph        Rpatel      895
2    Dancs        Betty        Bdancs      860
3    Biri        Ben            Bbiri      1100
4    Newman        Chad        Cnewman      750
5    Ropeburn    Audrey        Aropebur  1550

#方式一:
INSERT INTO my_employees
VALUES(1,'patel','Ralph','Rpatel',895),
(2,'Dancs','Betty','Bdancs',860),
(3,'Biri','Ben','Bbiri',1100),
(4,'Newman','Chad','Cnewman',750),
(5,'Ropeburn','Audrey','Aropebur',1550);

#方式二:
INSERT INTO my_employees
SELECT 1,'patel','Ralph','Rpatel',895 UNION
SELECT 2,'Dancs','Betty','Bdancs',860 UNION
SELECT 3,'Biri','Ben','Bbiri',1100 UNION
SELECT 4,'Newman','Chad','Cnewman',750 UNION
SELECT 5,'Ropeburn','Audrey','Aropebur',1550;
            
#4.     向 users表中插入数据
1    Rpatel        10
2    Bdancs        10
3    Bbiri        20

INSERT INTO users
VALUES(1,'Rpatel',10),
(2,'Bdancs',10),
(3,'Bbiri',20);

#5.将 3号员工的last_name修改为“drelxer”
UPDATE my_employees SET last_name='drelxer' WHERE id = 3;

#6.将所有工资少于 900 的员工的工资修改为 1000
UPDATE my_employees SET salary=1000 WHERE salary<900;

#7.将 userid为 Bbiri的 user表和 my_employees表的记录全部删除
DELETE u,e
FROM users u
JOIN my_employees e ON u.`userid`=e.`Userid`
WHERE u.`userid`='Bbiri';

#8.删除所有数据
DELETE FROM my_employees;
DELETE FROM users;

#9.检查所作的修正
SELECT * FROM my_employees;
SELECT * FROM users;

#10.清空表my_employees
TRUNCATE TABLE my_employees;

总结:基本的增删改查都已经完事。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值