MySQL——insert注意事项

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: MySQL——insert注意事项

插入的数据应与字段的数据类型相同

我们先创建一个goods表


1. create table `goods`(
2. id INT,
3. goods_name VARCHAR(10),
4. price DOUBLE );

下面插入一条语句

1. insert into `goods`(id ,goods_name,price)
2. values ('abc','小米手机',2000);

很显然是不可以的 因为id是一个整型 接收不了abc的类型!

fa53ecf5691a4d7b8c915b63850f068e.png

小王同学打算再试着插入一条语句:

1. insert into `goods`(id ,goods_name,price)
2. values ('30','小米手机',2000);

82cf9a6cebe945eda0edbcf392069244.png

居然可以通过 原因是 `30`这个字符串可以转化成整型的 但是abc 跟文字也不行!

数据的长度应该在列的规定范围内

insert into `goods`(id ,goods_name,price)
values (40,'vivovivovivovivo手机',2000);

22b2647c483b48bf953678e2f8ff1778.png

在values列出的数据位置必须与被加入的列的排列位置相应

1. insert into `goods`(id ,goods_name,price)
2. values ('华为手机',20,2000);

47fc8a6bba3e4043893815e6dd0edeee.png


字符和日期类型的数据应该包含在单引号中🎮

例如:

1. insert into `goods`(id ,goods_name,price)
2. values (40,vivo手机,2000);



0f7405844f224a7183dcd10ebbe4c022.png

很显然是不行的! 因为goods_name是一个varchar类型 是字符串要用单引号引起来

列可以插入空值 前提是该字段允许为空🎮

insert into `goods`(id ,goods_name,price)
values (30,'华为手机',NULL);

7770d4d6997f479c9495b7ec1c322d99.png

create table `goods`(
id INT,
goods_name VARCHAR(10),
price DOUBLE NOT NULL);

如果在属性后面加了 NOT NULL之后就不允许插入空值了!就会出现图片上的错误

32545e2fe6124fe7a257b1ab5451e3d4.png

列名后面可以添加多条记录🎮

1. insert into `goods`
2. values (50,'三星手机',2300),(60,'海尔手机',1900);


 2fb498e05ee546d9a89efaa632d9ef9e.png

向表中的所有字段添加数据时,可以不写前面的字段名称🎮

我们再向goods表中添加两条数据

如下图:

1. insert into goods
2. values(90,'苹果手机',5000),(45,'一加手机',4800);


865f8f43034c434d943fa5903e4ff165.png

默认值的使用🎮

我们可以指定某个列的默认值 ,可以在创建表时创建

create table `goods8`(
id INT,
goods_name VARCHAR(10),
price DOUBLE NOT NULL DEFAULT 100);
insert into `goods`(id,goods_name)
values(60,'格力手机');

522f6019296045f595791f07c25f0ad6.png

显然 price 默认给的就是100!  

以上就是小王同学带给大家的insert注意事项

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
存储 自然语言处理 关系型数据库
MySQL全文索引源码剖析之Insert语句执行过程
【8月更文挑战第17天】在MySQL中,处理含全文索引的`INSERT`语句涉及多步骤。首先进行语法解析确认语句结构无误;接着语义分析检查数据是否符合表结构及约束。随后存储引擎执行插入操作,若涉及全文索引则进行分词处理,并更新倒排索引结构。此外,事务管理确保了操作的完整性和一致性。通过示例创建含全文索引的表并插入数据,可见MySQL如何高效地处理此类操作,有助于优化数据库性能和提升全文搜索效果。
|
1月前
|
关系型数据库 MySQL
解决MySQL insert出现Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘xxx‘ at row 1
解决MySQL insert出现Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘xxx‘ at row 1
55 2
|
1月前
|
存储 关系型数据库 MySQL
在 MySQL 中使用 Insert Into Select
【8月更文挑战第11天】
93 0
在 MySQL 中使用 Insert Into Select
|
2月前
|
关系型数据库 MySQL Java
软件开发2003 -Can·t to MySQL server on ‘xxxxxx‘(10038),宝塔初始化安装mysql,远程链接MySql注意事项,开始时服务器是没有放开端口的,宝塔也都开
软件开发2003 -Can·t to MySQL server on ‘xxxxxx‘(10038),宝塔初始化安装mysql,远程链接MySql注意事项,开始时服务器是没有放开端口的,宝塔也都开
|
2月前
|
存储 关系型数据库 MySQL
MySQL删除索引的方法与注意事项
MySQL删除索引的方法与注意事项
|
3月前
|
关系型数据库 MySQL 数据库
mysql 中文问号,mybatis-plus insert中文数据库显示问号
mysql 中文问号,mybatis-plus insert中文数据库显示问号
48 1
|
4月前
|
SQL 关系型数据库 MySQL
【MySQL】DQL-分组查询-语法&where与having的区别&注意事项&可cv例题语句
【MySQL】DQL-分组查询-语法&where与having的区别&注意事项&可cv例题语句
【MySQL】DQL-分组查询-语法&where与having的区别&注意事项&可cv例题语句
|
3月前
|
SQL 安全 关系型数据库
MySQL DML语句insert全表数据添加语句以及注意事项
MySQL DML语句insert全表数据添加语句以及注意事项
43 0
|
3月前
|
关系型数据库 MySQL 数据库
MySQL数据库——触发器-案例(Insert类型、Update类型和Delete类型)
MySQL数据库——触发器-案例(Insert类型、Update类型和Delete类型)
47 0
|
4月前
|
SQL 关系型数据库 MySQL
【MySQL】DQL-排序查询-语法&注意事项&可cv例题语句
【MySQL】DQL-排序查询-语法&注意事项&可cv例题语句

热门文章

最新文章