前提要述:参考书籍《Mysql必知必会》 《mysql必知必会》是先讲了查询,但是没有记录就无法查询,所以先将如何添加数据。 表已经知道怎么创建了,随便创两张。 5.1 插入数据 Mysql使用 INSERT来插入(或添加)行
前提要述:参考书籍《Mysql必知必会》
《mysql必知必会》是先讲了查询,但是没有记录就无法查询,所以先将如何添加数据。
表已经知道怎么创建了,随便创两张。
Mysql使用 INSERT来插入(或添加)行(记录)到数据库表中。插入可用以下几种方式使用:
什么叫完整的行,即插入的有效数据都可以对应表中的每一列。
把数据插入表中,最简单的方法是使用基本的INSERT语法,需要指定表名和被插入到新行中的值,格式:
# 写法:
INSERT INTO VALUES(value1,value2,...);
# 规范写法:
INSERT INTO (field1, field2, ...) VALUES(value1,value2,...);
解释:
例子:在学生表中插入数据
INSERT INTO student(stu_id, stu_name, stu_sex) VALUES(1, '张三', '男');
注意:字符串或字符需要使用""(单引号)圈起来。
输出:如果成功的话
Query OK, 1 row affected (0.01 sec)
而如果在主键使用了自增长(AUTO_INCREMENT),那么则可以这样写
INSERT INTO student(stu_id, stu_name, stu_sex) VALUES(null, '张三', '男');
或者,不写主键:
INSERT INTO student(stu_name, stu_sex) VALUES('张三', '男');
也就是插入时,在主键的位置直接插入null或者不写默认就是赋给null,MySQL会因为AUTO_INCREMENT自己给它赋值。
INSERT LOW_PRIORITY INTO
INSERT可以插入一行到一个表中,也可以插入多行到一个表中,第一种方式就是写多条INSERT语句,还有一种方式就是在一条INSERT语句中插入多行。
语法:
INSERT INTO (
field1,
field2,
...
)
VALUES(
valueA1,
valueA2,
...
),
(
valueB1,
valueB2,
...
);
此写法可以提供INSERT的性能,因为MySQL用单条INSERT语句处理多个插入比使用多条INSERT快。
INSERT语句可以利用一条SELECT语句查询的结果插入到表中。也就是所谓的INSERT SELECT,它是由一条INSERT语句和一条SELECT语句构成。
比如我需要把一张表的数据复制到另一张表,语法:
INSERT INTO (field1, field2, ...)
SELECT field1, field2 FROM ;
# 或 也就是列名可以不同
INSERT INTO (field1, field2, ...)
SELECT f1, f2 FROM ;
注意:如果新表不存在则报错。
解释:
--结束END--
本文标题: MySQL数据库(五)插入操作
本文链接: https://lsjlt.com/news/3746.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-23
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0