关键词:
14. 表的一些操作
14.1 insert 语句一次插入多条记录
insert
语句可以一次插入多条记录吗?可以的!
desc t_user;
insert
语句一次插入多条记录的语法: insert into t_user(字段名1,字段名2) values(),(),(),();
。
insert into t_user(id,name,birth,create_time) values
(1,'zs','1980-10-11',now()),
(2,'lisi','1981-10-11',now()),
(3,'wangwu','1982-10-11',now());
14.2 快速创建表
快速创建表emp2:create table emp2 as select * from emp;
原理: 1. 将一个查询结果当做一张表新建!
2. 这个可以完成表的快速复制!
3. 表创建出来,同时表中的数据也存在了!
有条件的创建表mytable:create table mytable as select empno,ename from emp where job = 'MANAGER';
14.3 将查询结果插入到一张表当中
快速创建表 dept_bak: create table dept_bak as select * from dept;
将查询结果插入到表 dept_bak 当中:insert into dept_bak select * from dept;
(很少用)
14.4 快速删除表中的数据
删除 dept_bak 表中的数据:delete from dept_bak;
,这种删除数据的方式比较慢。
-
delete
语句删除数据的原理:(delete
属于DML语句!)
⋄ \\diamond ⋄ 表中的数据被删除了,但是这个数据在硬盘上的真实存储空间不会被释放!
⋄ \\diamond ⋄ 这种删除缺点是:删除效率比较低。
⋄ \\diamond ⋄ 这种删除优点是:支持回滚,后悔了可以再恢复数据! -
truncate
语句删除数据的原理:
⋄ \\diamond ⋄ 这种删除效率比较高,表被一次截断,物理删除。
⋄ \\diamond ⋄ 这种删除缺点:不支持回滚。
⋄ \\diamond ⋄ 这种删除优点:快速。
truncate
语句删除数据的用法:truncate table dept_bak;
(这种操作属于DDL操作)
当大表非常大,例如上亿条记录,删除的时候,使用delete
,也许需要执行1个小时才能删除完,效率较低。可以选择使用truncate
删除表中的数据,只需要不到1秒钟的时间就删除结束,效率较高。但是使用truncate
之前,必须仔细询问客户是否真的要删除,并警告删除之后不可恢复!
truncate
是删除表中的数据,表还在!
删除表操作:drop table 表名;
,这不是删除表中的数据,这是把表删除。
14.5 对表结构的增删改
什么是对表结构的修改?
添加一个字段,删除一个字段,修改一个字段!
对表结构的修改需要使用:alter
(属于DDL语句,DDL包括:create
、drop
、alter
。)
注意: 1. 在实际的开发中,需求一旦确定之后,表一旦设计好之后,很少的进行表结构的修改。因为开发进行中的时候,修改表结构,成本比较高。
2. 由于修改表结构的操作很少,所以我们不需要掌握,如果有一天真的要修改表结构,可以使用工具!
leetcode刷题mysql题解二十四(代码片段)
leetcode刷题MySQL题解二十四题目叙述表:Orders±----------------±---------+|ColumnName|Type|±----------------±---------+|order_number|int||customer_number|int|±----------------±---------+Order_number是该表的 查看详情
库的操作&表的操作(代码片段)
一库的操作掌握库的增删改查一、系统数据库执行如下命令,查看系统库showdatabases;information_schema:虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限信息、字符信息等performance_schema:M... 查看详情
『mysql篇』:mysql表的curd操作(代码片段)
📢MySQL系列专栏持续更新中…MySQL专栏目录目录一、SQL语句-SQL通用语法-注释-SQL语句分类二、基础表操作-创建表-查看库中的表-查看表结构-删除表-重命名表三、MySQL中的增删查改操作-增加(insert语句)-查询(select语... 查看详情
mysql小白之路表的创建与操作(代码片段)
【MySQL小白之路】表的创建与操作表的创建关键字:CREATETABLE所需信息:1.表名2.列名与列的定义(类型,能否为空)样例:CREATETABLEstudent( #表名:student stu_id int NOTNULL, #列名:stu_id 类型:int 能否为空:NOTs... 查看详情
038_mysql表的操作(代码片段)
...类型的数据。表中的一条记录有对应的标题,标题称之为表的字段。 二,创建表1,创建表createtable表名(字段名1类型[(长度,小数点)约束条件],字段名2类型[(长度,小数点)约束条件],字段名3类型[(长度,小数点)约束条件])engin... 查看详情
mysql表的基础命令及数据操作命令(代码片段)
一、MySQL关于表基础命令1.1表的创建语法:createtableifnotexists表名(字段名数据类型(null|notnull,default|auto_increment,primarykey,comment,varchar,),字段名数据类型...)engi 查看详情
表的操作(代码片段)
一.表的操作1.存储引擎(了解)前几节我们知道mysql中建立的库===》文件夹,库中的表====》文件现实生活中我们用来存储数据的文件有不同的类型,每种文件类型对应各自不同的处理机制:比如处理文本用txt类型,处理表格用excel... 查看详情
表的操作(代码片段)
...cel,处理图片用png等数据库中的表也应该有不同的类型,表的类型不同,会对应mysql不同的存取机制,表类型又称为存储引擎。ps:存储引擎说白了就是如何存储数据、如何为存储的数据建立索引和 查看详情
05-表的操作(代码片段)
本节掌握存储引擎介绍(了解)表的增删改查一、存储引擎(了解)前几节我们知道mysql中建立的库===》文件夹,库中的表====》文件现实生活中我们用来存储数据的文件有不同的类型,每种文件类型对应各自不同的处理机制:比... 查看详情
05-表的操作(代码片段)
本节掌握存储引擎介绍(了解)表的增删改查一、存储引擎(了解)前几节我们知道mysql中建立的库===》文件夹,库中的表====》文件现实生活中我们用来存储数据的文件有不同的类型,每种文件类型对应各自不同的处理机制:比... 查看详情
mysql数据库调优(代码片段)
...计冗余,避免后期因业务变更导致需要更改数据库结构1.2表的拆分影响表的查询效率的一个比较大的因素是数据量.为了避免因数据量的增多而导致SQL语句执行缓慢,在表的设计初期会考虑表的拆分操作.一般表的拆分分为两种:水平... 查看详情
mysql的一些基本操作(代码片段)
近期開始学习MySQL,主要是通过书籍。和看燕十八老师的视频,然后通过博客记录自己的学习过程。登入数据库[email protected]:~$mysql-uroot-pEnterpassword:查看当前全部数据库mysql>showdatabases;#查看当前全部数据库+-... 查看详情
mysql知识点整合(代码片段)
目录1.库的操作2.表的操作3.基础函数4.聚合函数5.条件查询6.关联查询7.事务8.索引9.视图10.总结1.库的操作 1.1建库(建demo)createdatabasedemodefaultcharactersetutf-8;1.2删库(删demo)dropdatabasedemo;1.3查库showdatabases;2.表的操作... 查看详情
《mysql高级篇》十四多版本并发控制(代码片段)
文章目录1.什么是MVCC2.快照读与当前读2.1快照读2.2当前读3.复习3.1再谈隔离级别3.2隐藏字段、UndoLog版本链4.MVCC实现原理之ReadView4.1什么是ReadView4.2设计思路4.3ReadView的规则4.4MVCC整体操作流程5.举例说明5.1READCOMMITTED隔离级别下5.2REPEAT... 查看详情
mysql介绍及crud操作。(代码片段)
...elect查询操作5、加密和系统函数6、流程控制函数 三、表的增删改查1、创建表2、修改表3、表的查询4、多表查询5、外连接一、基本介绍1、数据库结构 1、所谓安装Mysql数据库,就是在主机安装一个数据库管理系... 查看详情
mysql(代码片段)
数据库的分类MySQL简介常用sql命令desc显示表的结构创建表sql语句建表格式列-null拓展列-时间日期列-数值类型列-字符串命令scdeletemysql--清空服务字段名最好加上飘引擎一些字段属性一点小技巧showcreatedatabasestudent--查看创建数据库... 查看详情
十四mysql约束详解(代码片段)
文章目录一、定义完整性约束1.1实体完整性1.1.1主键约束1.1.2自增列:AUTO_INCREMENT1.1.3候选键约束或唯一约束(UNIQUEKEY)1.2用户定义完整性1.2.1非空约束1.2.2CHECK约束1.2.3DEFAULT约束1.3参照完整性1.3.1FOREIGNKEY约束的作用1.3.2主表(父表)... 查看详情
leetcode刷题mysql题解十四(代码片段)
leetcode刷题MySQL题解十四题目叙述给定一个表tree,id是树节点的编号,p_id是它父节点的id。±—±-----+|id|p_id|±—±-----+|1|null||2|1||3|1||4|2||5|2|±—±-----+树中每个节点属于以下三种类型之一:叶子:如果这个... 查看详情