我是靠谱客的博主 洁净小笼包,最近开发中收集的这篇文章主要介绍MySQL数据增加语句 MySQL数据增加语句 ,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

MySQL数据增加语句

数据库与表创建成功以后,需要向数据库的表中插入数据。在 MySQL中可以使用 INSERT 语句向数据库已有的表中插入一行或者多行元组数据。

基本语法

INSERT 语句有两种语法形式,分别是 INSERT…VALUES 语句和 INSERT…SET 语句。

1) INSERT…VALUES语句
语法:

INSERT INTO <表名> [ <列名1> [ ,<列名n>] ]
VALUES (1) [, (值n) ];

语法说明如下。

  • <表名>:指定被操作的表名。
  • <列名>:指定需要插入数据的列名。若向表中的所有列插入数据,则全部的列名均可以省略,直接采用 INSERT<表名>VALUES(…) 即可。
  • VALUESVALUE 子句:该子句包含要插入的数据清单。数据清单中数据的顺序要和列的顺序相对应。

案例:

指定表所有字段插入一条数据

INSERT INTO tb_courses
(course_id,course_name,course_grade,course_info)
VALUES(1,'Network',3,'Computer Network');

指定表所有字段插入多条数据

INSERT INTO tb_courses(course_id,course_name,course_grade,course_info)
VALUES(1,'Network',3,'Computer Network'),(1,'Network',3,'Computer Network'),(1,'Network',3,'Computer Network'),(1,'Network',3,'Computer Network');
Query OK, 1 rows affected (0.08 sec)

不指定表所有字段插入

mysql> INSERT INTO tb_courses
    -> (course_grade,course_info)
    -> VALUES(3,'Computer Network');
Query OK, 1 rows affected (0.08 sec)

如果有指定主键自增列的话 ,那么需要给一个默认值default ,(不指定就不需要,mysql内部会自动补充)

mysql> INSERT INTO tb_courses
    -> (id,course_grade,course_info)
    -> VALUES(default,3,'Computer Network');
Query OK, 1 rows affected (0.08 sec)

如果是时间字段的话,又不想字段数据为0000-00-00 00:00:00,我们可以使用now()获取当前时间进行填充

mysql> INSERT INTO tb_courses
    -> (course_grade,cdateTime)
    -> VALUES(3,now());
Query OK, 1 rows affected (0.08 sec)

2) INSERT…SET语句
语法:

INSERT INTO <表名>
SET <列名1> = <1>,
    <列名2> = <2>,...............

此语句用于直接给表中的某些列指定对应的列值,即要插入的数据的列名在 SET 子句中指定,col_name 为指定的列名,等号后面为指定的数据,而对于未指定的列,列值会指定为该列的默认值。

案例

insert into t_student 
set name='哈哈', age=21;

用的少这里就不多说了,基本注意事项和上面语法一样

注意事项

  • 使用 INSERT…VALUES 语句可以向表中插入一行数据,也可以插入多行数据;
  • INSERT…VALUES 语句可以一次插入多条数据。
  • 使用 INSERT…SET 语句可以指定插入行中每列的值,也可以指定插入部分列的值;
  • 用 INSERT …SET… 语句插入单条数据,要比使用 INSERT… VALUES…语句更快。但是在实际开发中基本都是使用INSERT … VALUES 方式.
  • 指定显示添加的字段如果有默认值的话都是可以使用default进行自动填充的
  • INSERT 语句后面的列名称顺序可以不是 tb_courses 表定义时的顺序,即插入数据时,不需要按照表定义的顺序插入,只要保证值的顺序与列字段的顺序相同就可以

复杂插入案例

某些字段的数据需要通过多个表的数据算出来的,这就需要熟练使用内查询和复制查询了

案例1

INSERT INTO `t_student_gradeclass_course` 
(`id`, `studentID`, `gradeClassID`, `t_course`) 
VALUES (1, (SELECT id FROM t_student where id=1 ), 11, 2);
点赞 -收藏-关注-便于以后复习和收到最新内容
有其他问题在评论区讨论-或者私信我-收到会在第一时间回复
如有侵权,请私信联系我
感谢,配合,希望我的努力对你有帮助^_^

最后

以上就是洁净小笼包为你收集整理的MySQL数据增加语句 MySQL数据增加语句 的全部内容,希望文章能够帮你解决MySQL数据增加语句 MySQL数据增加语句 所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部