1.  为表的所有字段插入数据

语法格式如下:

    INSERT   INTO  table_name  (  column_list )  VALUES  (  value_list  );

table_name:    指定要插入数据的表名。

column_list:    指定要插入数据的列。

value_list:    指定每个列要插入的数据。

 【注】  a.    字段列和数据值的数量必须相同。

                 b.    向表中的所有字段插入值的方法有两种:    一种是指定所有字段名,另一种是完全不指定字段名。

mysql> DESC  person;
+-------+------------------+------+-----+---------+----------------+
| Field | Type             | Null | Key | Default | Extra          |
+-------+------------------+------+-----+---------+----------------+
| id    | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| name  | char(40)         | NO   |     |         |                |
| age   | int(11)          | NO   |     | 0       |                |
| info  | char(50)         | YES  |     | NULL    |                |
+-------+------------------+------+-----+---------+----------------+

【例】在  person  表中,插入一条新纪录,id  值为  3,name  值为  Mary,age 值为  24,info  值为  Musician。

插入SQL语句:

mysql> INSERT  INTO  PERSON-> VALUES  (3, 'Mary',24, 'Musicion');
Query OK, 1 row affected (0.05 sec)

查看执行结果:

mysql> SELECT  * FROM person;
+----+------+-----+----------+
| id | name | age | info     |
+----+------+-----+----------+
|  3 | Mary |  24 | Musicion |
+----+------+-----+----------+

【例】在  person  表中,插入一条新纪录,id  值为  2,name  值为  Suse,age 值为  22,info  值为  dancer。

插入SQL语句:

mysql> INSERT  INTO  PERSON   ( age ,name, id, info)-> values  (22,'Suse',2,'dancer');
Query OK, 1 row affected (0.06 sec)

查看执行结果:

mysql> SELECT  * FROM person;
+----+------+-----+----------+
| id | name | age | info     |
+----+------+-----+----------+
|  2 | Suse |  22 | dancer   |
|  3 | Mary |  24 | Musicion |
+----+------+-----+----------+
可以看出,插入数据时,不需要按照表定义的顺序插入,只要保证值的顺序与列字段的顺序相同就可以。

2.  为表的指定字段插入数据

为表的指定字段插入数据,就是用  INSERT  语句为部分字段插入值,而其他字段的值为定义表时的默认值。

【例】在  person  表中,插入一条新纪录,name  值为  Willam,age 值为  20,info  值为  sports man。

插入SQL语句:

mysql> INSERT  INTO  PERSON  (name , age, info)-> VALUES ('Willam',  20, 'sports  man');
Query OK, 1 row affected (0.09 sec)

查看执行结果:

mysql> SELECT  * FROM person;
+----+--------+-----+-------------+
| id | name   | age | info        |
+----+--------+-----+-------------+
|  2 | Suse   |  22 | dancer      |
|  3 | Mary   |  24 | Musicion    |
|  4 | Willam |  20 | sports  man |
+----+--------+-----+-------------+

3.  同时插入多条记录

    用  INSERT  语句可以同时向数据表中插入多条记录,插入时指定多个值列表,每个值列表之间用逗号隔开

  语法格式:

 INSERT   INTO  table_name  (  column_list ) 

VALUES  (  value_list1 ) ,   (  value_list2  ),  ...   ,(  value_listn  );

4.  将查询结果插入表中

INSERT  还可以将  SELECT  请句查询的结果插入到表中。

语法格式如下:

    INSERT   INTO   table_name1   ( column_list1)

    SELECT   (column_list2)   FROM  table  name2   WHERE  (condition)

table_name1  指定待插入数据的表;

column_listl   指定待插入表中要插入数据的列;

table_name2   指定插入数据的来源表;

column_list2  指定数据来源表的查询列,该列表必须和  column_list1   列表中的字段个数 及数据类型相同;

condition 指定 SELECT 语句的查询条件。

【注】参考于清华大学出版社《MySQL数据库应用案例课堂》2016年1月第1版

MySQL——插入数据相关推荐

  1. MySQL 插入数据时,中文乱码问题的解决

    MySQL 插入数据时,中文乱码问题的解决 参考文章: (1)MySQL 插入数据时,中文乱码问题的解决 (2)https://www.cnblogs.com/sunzn/archive/2013/0 ...

  2. linux mysql插入中文乱码_解决Linux下Tomcat向MySQL插入数据中文乱码问题

    一.问题 在windows上面使用eclipse开发的项目在windows上面运行一切正常,部署到腾讯云时出现向MySQL数据库中插入数据是中文乱码 二.解决办法 1.尝试一 直接在linux上面使用 ...

  3. mysql插入数据与删除重复记录的几个例子(收藏)

    mysql插入数据与删除重复记录的几个例子 12-26shell脚本实现mysql数据的批量插入 12-26mysql循环语句插入数据的例子 12-26mysql批量插入数据(insert into ...

  4. c# 向mysql插入数据_C#连接mysql数据库 及向表中插入数据的方法

    mysql 语句操作: 创建数据库:create database hotelATMDb; use hotelATMDb; C#连接mysql 1.引用 dll MySql.Data.dll 下载地址 ...

  5. mysql c接口返回自增id_详解mysql插入数据后返回自增ID的七种方法

    引言 mysql 和 oracle 插入的时候有一个很大的区别是: oracle 支持序列做 id: mysql 本身有一个列可以做自增长字段. mysql 在插入一条数据后,如何能获得到这个自增 i ...

  6. java mysql 插入 乱码_java向mysql插入数据乱码问题的解决方法

    遇到java向mysql插入数据乱码问题,如何解决? MySQL默认编码是latin1 mysql> show variables like 'character%'; +----------- ...

  7. mysql 新增返回主键自增id_详解mysql插入数据后返回自增ID的七种方法

    引言 mysql 和 oracle 插入的时候有一个很大的区别是: oracle 支持序列做 id: mysql 本身有一个列可以做自增长字段. mysql 在插入一条数据后,如何能获得到这个自增 i ...

  8. jdbc 3种获得mysql插入数据的自增字段值的方法_JDBC 3种获得mysql插入数据的自增字段值的方法...

    JDBC 3种获得mysql插入数据的自增字段值的方法. 1. Retrieving AUTO_INCREMENT Column Values using Statement.getGenerated ...

  9. java向mysql插入数据乱码问题解决

    java向mysql插入数据乱码问题解决 参考文章: (1)java向mysql插入数据乱码问题解决 (2)https://www.cnblogs.com/jack204/archive/2012/0 ...

  10. Python3 多线程(连接池)操作MySQL插入数据

    1.主要模块 DBUtils : 允许在多线程应用和数据库之间连接的模块套件 Threading : 提供多线程功能 2.创建连接池 PooledDB 基本参数: mincached : 最少的空闲连 ...

最新文章

  1. 226. Invert Binary Tree 翻转二叉树
  2. Sprint2-2.0
  3. linux wptmp文件分析,wordpress上传图片提示“缺少临时文件夹”的解决方法
  4. linux下的I2C驱动记录(RK)
  5. ZZULIOJ 1097: 计算平均成绩(函数专题)
  6. ETH联合Meta和鲁汶大学 提出视频恢复算法VRT,在视频超分辨率、去模糊和去噪性能达到SOTA...
  7. 3种方法实现http虚拟主机
  8. allergro音乐术语什么意思_「8D音乐」里的 8 是什么意思?
  9. Xcode常用的快捷键有哪些?
  10. [实验]一个小的局域网
  11. python元素定位_Python自动化中的元素定位(一)
  12. Linux epoll模型详解及源码分析
  13. 23种设计模式学习记录之单例设计模式
  14. networkx igraph相互转换+效率比较
  15. 使用html5静态页面的总结,幸福西饼:静态页面制作项目总结
  16. 分数阶傅立叶变换程序汇总(转载)
  17. MATLAB基本使用方法
  18. anemometer mysql 500_Anemometer基于pt-query-digest将MySQL慢查询可视化
  19. jpg和png的区别
  20. iOS开发基本功的那些事儿(未完待续)

热门文章

  1. C语言——A、‘A‘、“A“的区别
  2. tcp连接失败触发的异常
  3. 浪漫的的c语言编程,〖落拓素净〗C语言编程也可以很浪漫。。。。。。
  4. 长安链大规模数据存储及数据膨胀分析
  5. Python实现isPrime()函数,参数为整数,要有异常处理。如果整数是质数,返回True,否则返回False。通过调用isPrime()函数,打印200以内的所有质数,以空格分割。
  6. python莱布尼茨法计算π_python圆周率计算(带进度条)
  7. JPA 概述及 SpringDataJpa 框架基本使用指南
  8. Python中partial的使用
  9. Matlab计算波形的总谐波失真--THD(附完整代码)
  10. 设置iPhone的呼叫转移来电等待