MySQL 修改数据

目录

数据插入-insert

不指定列名插入:

插入整行数据

格式:

多行数据插入

格式:

指定列名插入

插入1行

插入多行

更新字段-update

语法:

删除表

语法:

案例:


数据插入**-insert**

INSERT 将数据行写入数据表。INSERT 可以适用于下面这几种场景:
插入整行数据
插入一行中部分数据(指定列)
插入多行数据(多行)
将查询语句的结果插入数据表(select + insert into )

不指定列名插入:

插入整行数据

格式:

INSERT INTO 表(列名1,列名2,列名3... ...) VALUES (值1,值2, 值3.....)//一组括号代表一行数据
值会按照定义表结构的顺序一一对应去插入,所以在插入数据之前必须知道数据表的基本结构:
列的定义顺序
每一列数据对应的数据类型分别是什么
对于每一列数据属性要求,包括:默认值、是否能为NULL、是不是主键、自增、唯一

DESC 表; // 查询表结构

多行数据插入

格式:

INSERT INTO 表(列名1) VALUES (值1),(值2),( 值3).....;

指定列名插入

插入1行

INSERT INTO 库名.表名(列名列表)VALUES(值列表);

插入多行

VALUES(值列表),(值列表),...INSERT INTO 库名,表名(列名列表);

set命令赋值

INSERT INTO 库名:表名 SET 字段=值,字段=值 ,.......;

更新字段**-update**

update语句可以实现两种效果:
只更新表格中特定的行
更新表格中所有的行

语法:

UPDATE 表 SET 列 = 值, 列 = 值 WHERE 过滤条件;

批量修改

UPDATE库名.表名 SET 字段=值,字段=值,

仅修改与条件匹配的

UPDATE库名.表名 SET 字段=值,字段=值 WHERE 条件;

删除表

语法:

DELETE FROM 库名.表名 WHERE 条件; //仅删除与条件匹配的行

DELETE FROM 库名.表名; //清空表记录

TRUNCATE TABLE 库名.表名; //清空表记录

案例:

1、使用 INSERT 和指定的列,将自己添加到 Customers 表中。

复制代码
mysql> INSERT INTO customers(cust_id,
    ->                       cust_name,
    ->                       cust_address,
    ->                       cust_city,
    ->                       cust_state,
    ->                       cust_zip,
    ->                       cust_country,
    ->                       cust_email)
    -> VALUES(10042,
    ->        'Qzb',
    ->        '123 Main Street',
    ->        'Oak Park',
    ->        'MI',
    ->        '48237',
    ->        'China',
    ->        'ben@fortabbwpc.wpcomstaging.com');
Query OK, 1 row affected (0.00 sec)

2、创建 Orders 和 OrderItems 表的备份副本。

复制代码
ysql> CREATE TABLE ordersBackup AS SELECT * FROM orders;;
Query OK, 5 rows affected (0.08 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> CREATE TABLE orderitemsBackup AS SELECT * FROM orderitems;
Query OK, 11 rows affected (0.02 sec)
Records: 11  Duplicates: 0  Warnings: 0

3、美国州的缩写应始终为大写。编写 SQL 语句以更新所有美国地址,包括供应商状态(供应商中的vend_state)和客户状态(客户中的cust_state),使它们为大写。

复制代码
mysql> UPDATE vendors SET vend_state = UPPER(vend_state) WHERE vend_country = 'USA';
Query OK, 0 rows affected (0.01 sec)
Rows matched: 4  Changed: 0  Warnings: 0

mysql> UPDATE customers SET cust_state = UPPER(cust_state) WHERE cust_country = 'USA';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 5  Changed: 0  Warnings: 0

4、我要求您将自己添加到 Customers 表中。现在删除你自己。请确保使用 WHERE 子句(并在 DELETE 中使用 SELECT 之前对其进行测试),否则将删除所有客户!

复制代码
mysql> delete from customers where cust_id = 10042;
Query OK, 1 row affected (0.02 sec)
相关推荐
90后小陈老师3 分钟前
记录一次Figma订阅被多扣费的教训
java·linux·数据库
计算机毕设指导67 分钟前
基于微信小程序的心理咨询预约系统【源码文末联系】
java·spring boot·mysql·微信小程序·小程序·tomcat·maven
焦糖布丁的午夜8 小时前
MySQL数据库大王小练习
数据库·mysql
狗头实习生9 小时前
Spring常见的事务失效原因
java·数据库·spring
冉冰学姐10 小时前
SSM泰兴市公交信息系统f504u(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架应用·泰兴市公交·息管理系统
偶像你挑的噻11 小时前
3.Qt-基础布局以及事件
开发语言·数据库·qt
Dxy123931021612 小时前
MySQL如何做读写分离架构
数据库·mysql·架构
毕设十刻13 小时前
基于Vue的考勤管理系统8n7j8(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
合方圆~小文13 小时前
不同画面,三个镜头实时监控拍摄方案
数据结构·数据库·人工智能
ChrisitineTX14 小时前
凌晨突发Java并发问题:synchronized锁升级导致接口超时,排查过程全记录
java·数据库·oracle