零基础学SQL(六、数据的增删改查简单语句)
目录
前置建表
一、数据的插入
1、插入数据语法
1.1、插入完整的行
1.2、插入行的一部分
1.3 、插入多行
1.4、插入某些查询的结果
二、数据的简单查询
1、查询数据语法
三、数据的修改
1、修改数据语法
2、IGNORE关键字
四、数据的删除
1、删除数据语法
2、DELETE、TRUNCATE 、DROP区别
2.1 、DELETE
2.2、TRUNCATE
2.3、DROP
五、常见导致错误语句
前置建表
CREATE TABLE student (id int NOT NULL AUTO_INCREMENT COMMENT '主键',code varchar(255) NOT NULL COMMENT '学号',name varchar(255) DEFAULT NULL COMMENT '姓名',sex enum('男','女') DEFAULT NULL COMMENT '性别',PRIMARY KEY (`id`)
)
一、数据的插入
1、插入数据语法
INSERT into table-name(field-name-1, field-name2, field-name-n)
VALUES(vaiue-1, value-2, value-n)--省略列明插入
INSERT into table-nameVALUES(vaiue-1, value-2, value-n)
1.1、插入完整的行
INSERT INTO student (id, code, name, sex) VALUES (1, '202201', '张三', '男');
INSERT INTO student VALUES (2, '202202', '李四', '男');
如果指定列名形式插入,则列明先后顺序可以随意切换,只要列明跟数据一一对应即可如:
INSERT INTO student (id, code, name, sex) VALUES (1, '202201', '张三', '男');
跟INSERT INTO student (id, name, code,sex) VALUES (1, '张三','202201', '男');结果一样
1.2、插入行的一部分
如果对表中不允许NULL值且没有默认值的列不给出值,则MySQL将产生一条错误消息,并且相应的行插入不成功。
INSERT INTO student (id, code, name) VALUES (3, '202203', '王五');
1.3 、插入多行
INSERT INTO student (`id`, `code`, `name`, `sex`) VALUES (1, '202201', '张三', '男');
INSERT INTO student (`id`, `code`, `name`, `sex`) VALUES (2, '202202', '李四', '男');
INSERT INTO student (`id`, `code`, `name`, `sex`) VALUES (3, '202203', '王五', NULL);
INSERT INTO student (`id`, `code`, `name`, `sex`) VALUES (1, '202201', '张三', '男'),(2, '202202', '李四', '男'),(3, '202203', '王五', NULL);
1.4、插入某些查询的结果
INSERT INTO TABLE1 (field-name-1, field-name2, field-name-n)SELECT (field-name-1, field-name2, field-name-n) FROM TABLE2
二、数据的简单查询
1、查询数据语法
-- 全列查询
SELECT * FROM table-name where condition-- 部分列查询select field-name-1, field-name2,... field-name-n from table-name where condition
如查询所有学生信息和只查询姓名,性别结果分别如下
SELECT语句一般跟WHERE结合使用,用于查询筛选之后的结果,比如查询name为张三的学生信息
三、数据的修改
1、修改数据语法
update table-name
set field-name-1=value-1,
field-name2=value-2,...
field-name-n=value-n where condition
如把学号为202201的学生学号修改为20220101
update student set code ='20220101' where code='202201';
2、IGNORE关键字
四、数据的删除
1、删除数据语法
DELETE table-name where condition;
如删除code为202203的学生,语句如下
DELETE student where code='202203';
2、DELETE、TRUNCATE 、DROP区别
2.1 、DELETE
语法 DELETE from table-name where
删除内容,不删除表结构,但不释放空间,delete删除数据后只会从删除前的最后一行续写,可以与WHERE结合使用
2.2、TRUNCATE
语法:TRUNCATE 表名
删除内容,不删除表结构,但不释放空间,truncate是直接从1开始,即全部清空开始,而delete需要先得到当前行数,从而进行续写;所以truncate删除速度比delete快,可以理解为 TRUNCATE是删除原来的表并重新创建一个表,而不是逐行删除表中的数据
2.3、DROP
语法: drop 表名
drop语句将表所占用的空间全释放掉,删除表结构
执行效率:一般来说按执行速度可分为 DROP>TRUNCATE>DELETE
五、常见导致错误语句
1、主键不唯一
ERROR 1062 (23000): Duplicate entry 'l' for key 'PRIMARY'
2、不存在的外键
ERROR 1452(23000) : Cannot add or update a child row :
3、列值不合法
ERROR 1265 (01000): Data truncated for column 'xxx' at row 1
4、无效的日期转换
ERROR 1292(22007) : Incorrect date value: 'xxx' for column'xxx' at row 1
零基础学SQL(六、数据的增删改查简单语句)相关推荐
- 零基础学Java大数据难不难
java大数据如今在企业中用到的次数是非常多的,很多人都比较看好java技术,那么零基础学Java大数据难不难?想要学习java技术说难不难,说简单也不是很简单,来看看下面的详细介绍就知道了. 零基础 ...
- 零基础学SQL(1):初识数据库与SQL
零基础学SQL(1):初识数据库与SQL 一.初识数据库 数据库是将大量数据保存起来,通过计算机加工而成的可以 进行高效访问的数据集合.该数据集合称为数据库(Database,DB).用来管理数据库的 ...
- SQL Server创建数据库和数据的增删改查
SQL Server创建数据库和数据的增删改查 本文是针对数据的增删改查,数据的创建 首先我们使用命令创建sql server数据库 D盘新建一个文件夹DB use master go --创建数据库 ...
- Vue+ElementUI纯前端技术实现对表格数据的增删改查
Vue+ElementUI纯前端技术实现对表格数据的增删改查 页面展示效果 一.页面结构 分为三个部分 head body 以及script 一般我个人是在head中引入一些组件库 , 还有一些样式 ...
- IOS开发基础之SQLite3数据库的使用增删改查
IOS开发基础之SQLite3数据库的使用增删改查 ios开发我们可能会使用到数据库进行持久化存储.sqlite3 是轻量级的数据库. 今天我们来介绍sqlite3 数据库.此方法跟java的增删改查 ...
- Redis概述_使用命令对redis的数据进行增删改查_Jedis连接redis进行数据操作_redis进行数据缓存案例
学习目标 redis 概念 下载安装 命令操作 1. 数据结构 持久化操作 使用Java客户端操作redis Redis 前言(从百度上抄的, 看看了解一下, 懒得排版了) 1. 概念: redis是 ...
- 从零开始的VUE项目-03(数据的增删改查)
代码svn地址 (用户名:liu,密码;123) 这一篇中,我们要实现的基本就是这么个东西 这个页面就是我们创建的DataManagement.vue页面,我们的主要代码将写在这里面,这个表格我们将用 ...
- JavaWeb小项目(二)- 完成品牌数据的增删改查(JSP/MVC/三层架构综合应用)
JavaWeb小项目(二)- 完成品牌数据的增删改查(JSP/MVC/三层架构综合应用) 文章目录 JavaWeb小项目(二)- 完成品牌数据的增删改查(JSP/MVC/三层架构综合应用) 环境搭建 ...
- vue访问php时做增删改查,node连接mysql生成接口,vue通过接口实现数据的增删改查(一)...
武汉加油遇新是直朋能到分览支体调!中国加油! 想必许多干用是处框它观有理近货框万理架是察放是近学vue的小伙伴想连接数据库,对数据进行增删改查吧,奈何不知道怎么实现.作为一路踩坑的我,为大家带来我的一 ...
最新文章
- SpringBoot+JsTree实现在编辑时能选择树形结构并获取选中的ID
- SpringBoot从入门到实战只需一篇文章
- 剑指0ffer04.二维数组中的查找
- 【经典回放】JavaScript学习详细干货笔记之(一)
- Cisco2960交换机密码忘记恢复教程
- 电商项目的app学习笔记(一)---webpack相关配置
- 国内主流的ERP软件大盘点
- 在多媒体计算机中静态媒体是指,《多媒体技术及应用》按章复习题
- 关于深度森林的一点理解
- 组合数公式用C语言怎么算,排列组合c怎么算 公式是什么
- iOS 组件化/模块化架构设计实践
- 区块链入门教程(4)--搭建单机四节点FISCO BCOS联盟链
- MatLab中的多项式拟合(lsqcurvefit函数的非线性曲线拟合)
- 使用串口线连接调试机顶盒
- 插入u盘计算机未响应,u盘启动电脑无反应,教您电脑插上U盘后无法启动解决方法...
- Ristretto 简介:一个高性能 GO 缓存
- SUMPRODUCT多列求和的应用
- 如何react中使用redux和react-redux
- RunAsDate 1.01
- 6个「会议议程」实例和免费模板
热门文章
- 绝地求生,把命运掌握在自己手中
- 微信春节大数据出炉:《三体》阅读量第一 ;曝iOS 17应用商店将向第三方开放;斯坦福大学推出DetectGPT|极客头条...
- 用压力传感器测量小米净水器及接管线机的改装方案
- html图片手机端不清楚,HTML+CSS图片大小自适应~PC电脑端、手机端
- i3处理器_为什么Intel的处理器很保值?新款i3吊打老款i5而其价格依旧虚高
- 小司机带你撸一个简单的RPC框架
- 随笔7(arduino)
- Java根据姓名生成头像(类似钉钉)
- HADOOP jps查看不到进程
- 问题 B: 黑暗意志