MySQL INSERT:插入数据

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

基本语法

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

1) INSERT…VALUES语句

INSERT VALUES 的语法格式为:

INSERT INTO 表名 (列名1, … 列名n )

VALUES (值1… , 值n);

2) INSERT…SET语句

语法格式为:

INSERT INTO 表名

SET 列名1 = 值1,

列名2 = 值2,

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

由 INSERT 语句的两种形式可以看出:

  • 使用 INSERT…VALUES 语句可以向表中插入一行数据,也可以插入多行数据;

  • 采用 INSERT…SET 语句可以向表中插入部分列的值,这种方式更为灵活;

向表中的全部字段添加值

在student数据库中创建一个学生表,包含学生编号 id、学生姓名 name、学生年龄age输入的 SQL 语句和执行结果如下所示。

mysql> create table student(id int primary key auto_increment,name varchar(8),age int not null);
Query OK, 0 rows affected (0.16 sec)
mysql> insert into student (id,name,age)value(null,"张三",18);
Query OK, 1 row affected (0.12 sec)
​
mysql> insert into student (id,name,age)value(null,"李四",16);
Query OK, 1 row affected (0.08 sec)
​
mysql> select * from student;
+----+------+-----+
| id | name | age |
+----+------+-----+
|  1 | 张三 |  18 |
|  2 | 李四 |  16 |
+----+------+-----+
2 rows in set (0.00 sec)

向表中指定字段添加值

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

【实例 4】在 student表中插入一条新记录,age 值为22,输入的 SQL 语句和执行结果如下所示。

mysql> insert into student set age=22;
Query OK, 1 row affected (0.05 sec)
​
mysql> select * from student;
+----+------+-----+
| id | name | age |
+----+------+-----+
|  1 | 张三 |  18 |
|  2 | 李四 |  16 |
|  3 | NULL |  22 |
+----+------+-----+
3 rows in set (0.00 sec)

可以看到插入记录成功。如查询结果显示,这里的 age字段一个整数值 22。这时的 id 字段为表的主键,不能为空,系统自动为该字段插入自增的序列值。在插入记录时,如果某些字段没有指定插入值,MySQL 将插入该字段定义时的默认值。

MySQL INSERT对表中数据的操作-插入数据相关推荐

  1. mysql 如何对表排序_学习MySQL:对表中的数据进行排序和过滤

    mysql 如何对表排序 In this article, we will learn how we can sort and filter data using the WHERE clause a ...

  2. mysql 插入学生信息_MySQL经典50题-1-创建数据表和插入数据

    MySQL经典50题-1-创建数据表和插入数据 本文的整理和学习来自CSDN的一位博主,接下来的一个系列将是自己的学习和整理内容,提升MySQL. 同时解法会对网上的版本进行整理和综合,尽可能有多种答 ...

  3. mysql设置主键自增长,插入数据时报错,解决

    mysql设置主键自增长,插入数据时报错,解决 创建一个可以自增长的表 create table user ( sid int not null primary key auto_inrement, ...

  4. Python使用SQLAlchemy连接数据库并创建数据表、插入数据、删除数据、更新表、查询表(CRUD)

    Python使用SQLAlchemy连接数据库并创建数据表.插入数据.删除数据.更新表.查询表(CRUD) 目录 Python使用SQLAlchemy连接数据库并创建数据表 #SQLAlchemy # ...

  5. mysql获取一个表的数据作为值插入_请问如何在mysql中得到一个即将插入数据表中的那条数据的id值(id自增长)?...

    我们在写数据库程序的时候,经常会需要获取某个表中的最大序号数, 一般情况下获取刚插入的数据的id,使用select max(id) from table 是可以的. 但在多线程情况下,就不行了. 下面 ...

  6. SqlServer2012语句之实例之用SQL语句对表中数据进行操作及数据的导入和导出

    --5月7日   SQL Server实验内容 --一.用SQL语句对表中数据进行操作 --1.根据系部表.班级表.学生表.教师表已有数据(如果没有数据,请使用管理平台或者SQL语句先为以上表添加数据 ...

  7. mysql 插入_Mysql中创建表格及插入数据

    学习笔记 [数据库相关概念] Q:什么是数据库和关系数据库. A:数据库是存储数据合集的"仓库".关系数据库是保存多张表和多张表之间的关系的数据库.关键字段将多张表"联结 ...

  8. Mysql 中创建数据库并插入数据

    运行数据库 sudo service mysql startmysql -u root 新建数据库 create database mydatabse_test; 使用数据库 use mydataba ...

  9. mysql比对表中数据是否相同_如何用sql比较两张表数据是否一致?

    在批量程序的测试中,经常会涉及到对数据库表的测试,今天我们来介绍一下用sql比较两张表结构相同的表数据是否完全一致的方法. 1.inner join 浅尝 提到比对两张表的数据是否完全相同,很容易想到 ...

  10. ado.net mysql 批量插入_[Dapper].NET/C#程序开发中使用Dapper批量插入数据集合的方法应该如何实现?...

    问题描述 使用Dapper如何向数据库中批量插入数据或者说使用Dapper如何插入一个集合(List),在没有使用Dapper(使用Ado.net)的情况下,我们通常的实现方式如下: try { co ...

最新文章

  1. 软件需求开发的18般武艺
  2. 对不起,作为导师,我让您失望了!
  3. python知识点总结(有空就往里面添加)
  4. js input 自动换行_矿用自动灭火装置水基型自动灭火装置原理国内分析研讨_搜狐汽车...
  5. 【转】TCP协议的无消息边界问题
  6. 【opencv学习】【Canny边缘检测】
  7. 机器学习和统计模型的差异
  8. mysql pool返回值_【Mysql】你知道一条查询语句是如何执行的吗?
  9. linux 64位操作系统安装32位运行库
  10. if else终结者——策略模式
  11. 手动安装K8s第五节:master节点kubectl命令部署
  12. 矢量绘图工具 Ipe
  13. php strtok函数,strtok函数的使用示例
  14. 分类变量、有序变量、数值变量差异分析(二)t检验
  15. 肝脏~卧则回血,坐立向外供血
  16. 手机、浏览器的分辨率、状态栏参数
  17. 真实案例,手把手教你构建用户画像
  18. RTL9010调试记录
  19. RouterOS(ROS)+OpenWRT(LEDE)双软路由奶妈级配置
  20. 基于ACF多通道特征的人脸检测——从原理到实现

热门文章

  1. 微信小程序获取地理位置
  2. 强力推荐素材收集和管理神器-Eagle工具
  3. 【第17天】SQL进阶-查询优化- SHOW STATUS(SQL 小虚竹)
  4. Win7C盘不能扩大怎么办?Win7C盘扩展卷不能点怎么解决
  5. 计算机图形学:中点划线法(任意斜率)
  6. echarts柱形图X轴Y轴相关配置
  7. 对于公司的管理者,如何解决Facebook操作者离职的问题,facebook能公司统一管理吗?会不会和Facebook真实身份注册有冲突,
  8. 2022年下半年网络工程师下午真题及答案解析
  9. 基金仓位“88%魔咒”再现 百点长阳能否击破?
  10. ionic + angular开发篇之踩坑集