博客 > SQL知识:SQL常见问题解答
浏览量:759次评论:0次
作者:锐成网络整理时间:2024-07-12 17:48:38
SQL是一种关系型数据库语言,是现代信息时代必不可少的技能之一。在使用SQL时,可能会遇到许多问题,下面是收集的一些SQL常见问题解答,包括InnoDB和MyISAM的区别、varchar和text的区别、int(20)中20的含义等相关内容。
问题1:请说明InnoDB和MyISAM的区别
InnoDB支持事务,MyISAM不支持;
InnoDB数据存储在共享表空间,MyISAM数据存储在文件中;
InnoDB支持行级锁,MyISAM只支持表锁;
InnoDB支持崩溃后的恢复,MyISAM不支持;
InnoDB支持外键,MyISAM不支持;
InnoDB不支持全文索引,MyISAM支持全文索引;
问题2:innodb引擎的特性
插入缓冲(insert buffer)
二次写(double write)
自适应哈希索引(ahi)
预读(read ahead)
问题3:请列举3个以上表引擎
InnoDB、MyISAM、Memory
问题4:请说明varchar和text的区别
varchar可指定字符数,text不能指定,内部存储varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),text是实际字符数+2个字节。
text类型不能有默认值。
varchar可直接创建索引,text创建索引要指定前多少个字符。varchar查询速度快于text,在都创建索引的情况下,text的索引几乎不起作用。
查询text需要创建临时表。
问题5:varchar(50)中50的含义
最多存放50个字符,varchar(50)和(200)存储hello所占空间一样,但后者在排序时会消耗更多内存,因为order by col采用fixed_length计算col长度(memory引擎也一样)。
问题6:int(20)中20的含义
是指显示字符的长度,不影响内部存储,只是当定义了ZEROFILL时,前面补多少个 0
以上就是关于SQL常见问题解答的相关内容了,掌握这些内容,有助于更好的管理和优化数据库。
重要声明:本文来自SQL数据库开发,经授权转载,版权归原作者所有,不代表锐成观点,转载的目的在于传递更多知识和信息。
相关文章推荐
2024-08-20 17:58:16
2024-08-19 17:49:29
2024-08-19 10:23:28
2024-08-16 17:06:33
2024-08-15 17:22:55
热门工具
标签选择
阅读排行
我的评论
还未登录?点击登录