MySQL笔记之修改数据的解决方法

 更新时间:2013年05月03日 17:15:08   作者:  
本篇文章介绍了,在mysql中修改数据的解决方法。需要的朋友参考下

数据库通过插入、更新和删除等方式来该表表中的记录,其中

insert语句实现插入数据

update语句实现更新数据

delete语句实现删除数据

参考表

插入数据不指定字段名插入

不指定字段名插入

复制代码 代码如下:

mysql> insert into person values(1,'张三','男',1988);
Query OK, 1 row affected, 1 warning (0.03 sec)

nsert into后面是表名,values后面是需要插入的数据

values中的数据必须与字段名相匹配,如第一字段为空值则输入null,尾部可不输入

需要注意的是,字符串数据必须用引号包裹


指定字段名插入

复制代码 代码如下:

mysql> insert into person(id,name,sex,birth) values(6,'王芳','女',1992);
Query OK, 1 row affected, 1 warning (0.05 sec)

insert into 后面接表名和字段,此处的字段可调整位置

但一个必要条件是后面的values值必须与其字段对应


同时插入多条数据

复制代码 代码如下:

mysql> insert into person(id,name) values(8,'钱名'),(9,'章硕');
Query OK, 2 rows affected (0.04 sec)
Records: 2  Duplicates: 0  Warnings: 0

values后面用多个括号插入数据,逗号隔开即可

至于插入的字段只需结合上面讲的两个例子使用

将查询结果插入到表中

复制代码 代码如下:

mysql> insert into person2(id,name,sex,birth) select * from person;
Query OK, 9 rows affected, 6 warnings (0.03 sec)
Records: 9  Duplicates: 0  Warnings: 6

这里要注意,插入的字段和表中的字段个数和数据类型必须一致,否则就会报错


复制一张表

复制代码 代码如下:

mysql> CREATE TABLE per AS SELECT * FROM person;
Query OK, 1 row affected (0.16 sec)
Records: 1  Duplicates: 0  Warnings: 0

update+表名代表要更新的表,set后面设置需要更新的内容

where用作限制更新条件,后面接表达式,只要表达式为真便满足条件

Tips:where 1也能代表真,即全部满足


多字段更新

复制代码 代码如下:

mysql> update person set name='小红',sex='女' where id=3;
Query OK, 1 row affected (0.03 sec)
Rows matched: 1  Changed: 1  Warnings: 0

多字段更新只需要在set后面添加多个要修改的字段和数据即可,用逗号隔开

如果想更新所有记录则无需加where

tips:使用update要特别小心,因为有可能多条记录满足where条件

     最好是先查看一边表,确定要更新的记录


删除字段
删除指定记录

复制代码 代码如下:

mysql> delete from person where id=9;
Query OK, 1 row affected (0.02 sec)

删除记录也需要跟上where限定

tips:除非你非常确定where子句只会删除你想要删除的行

   否则都应该用select来确认情况


删除所有记录

复制代码 代码如下:

mysql> delete from person;
Query OK, 8 rows affected (0.03 sec)

在不跟where限定条件的情况下即可逐条删除所有记录

此外还有truncate table语句,它会删除原来的表,再重新建立,效率更高

tips:这里删除不会要任何提示,说删就删了,快的很

     所以使用的时候要格外小心,最好先把数据备份

相关文章

  • MySQL MyISAM 优化设置点滴

    MySQL MyISAM 优化设置点滴

    MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快, 只是不提供事务支持.大部分项目是读多写少的项目,而Myisam的读性能是比innodb强不少的
    2016-05-05
  • mysql 8.0.11 安装步骤详解

    mysql 8.0.11 安装步骤详解

    这篇文章主要为大家详细介绍了mysql 8.0.11 安装步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-08-08
  • SQL常用的四个排序函数梳理

    SQL常用的四个排序函数梳理

    这篇文章主要介绍了SQL常用的四个排序函数梳理,四个排序函数分别是SQL Server排序中经常用到的ROW_NUMBER()、RANK()、DENSE_RANK()、NTILE()、下文简单分享,需要的小伙伴可以参考一下
    2022-07-07
  • MySQL中dd::columns表结构转table过程及应用详解

    MySQL中dd::columns表结构转table过程及应用详解

    MySQL的dd表是用来存放表结构和各种建表信息的,客户端建的表都存在mysql.table和mysql.columns表里,还有一个表mysql.column_type_elements比较特殊,用来存放SET和ENUM类型的字段集合值信息,对mysql dd::columns表结构相关知识感兴趣的朋友一起看看吧
    2022-09-09
  • Centos7 安装mysql 8.0.13(rpm)的教程详解

    Centos7 安装mysql 8.0.13(rpm)的教程详解

    这篇文章主要介绍了Centos7 安装mysql 8.0.13(rpm)的教程详解,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-11-11
  • MySQL虚拟列的使用示例

    MySQL虚拟列的使用示例

    虚拟列是MySQL中的一种特殊列,它不存储在表中,而是在查询时动态计算生成,虚拟列可以提高查询效率、减少存储需求、确保数据一致性、简化查询和保护敏感数据,感兴趣的可以了解一下
    2024-11-11
  • 彻底搞懂数据库操作truncate delete drop关键词的区别

    彻底搞懂数据库操作truncate delete drop关键词的区别

    这篇文章主要为大家介绍了数据库操作truncate delete drop关键词的区别,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • Mysql表创建外键报错解决方案

    Mysql表创建外键报错解决方案

    这篇文章主要介绍了Mysql表创建外键报错解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • MySQL详解如何优化查询条件

    MySQL详解如何优化查询条件

    我们知道从MySQL表中使用SELECT语句来查询数据,如需有条件地从表中选取数据,可将WHERE子句添加到SELECT语句中,本篇我们来看看怎样优化查询条件
    2022-05-05
  • Mysql查询语句执行过程及运行原理分析

    Mysql查询语句执行过程及运行原理分析

    这篇文章主要介绍了Mysql查询语句执行过程及运行原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08

最新评论