MySQL自增主键与面试题解析
版权申诉
198 浏览量
更新于2024-09-10
收藏 602KB PDF 举报
"MySQL55题含答案.pdf"
1、在MySQL中,自增主键的行为取决于存储引擎。对于MyISAM引擎,如果删除了ID为15、16、17的记录,然后重启MySQL,再插入新记录,ID会是18,因为MyISAM会将最大ID写入数据文件。然而,对于InnoDB引擎,删除这些记录后,如果重启数据库,再插入记录,ID将是15,因为InnoDB只在内存中保存自增ID,重启后会丢失。
2、MySQL的技术特点包括:多线程支持,允许多种客户端连接;使用SQL语言;支持多种数据库引擎如MyISAM和InnoDB;提供丰富的API和管理工具;并且其InnoDB引擎支持事务处理,具有ACID特性。
3、Heap表,也称为临时表,存储在内存中,用于快速数据处理。它们不支持BLOB或TEXT字段,只允许基本的比较运算符,不支持 AUTO_INCREMENT,索引字段不能为NULL。
4、MySQL服务器的默认端口是3306,这是连接MySQL服务时通常使用的通信端口。
5、与Oracle相比,MySQL的优势在于:它是开源的,用户可以免费使用;具有跨平台性,易于移植;提供了图形化界面工具,如MySQL Query Browser;运行速度快,适用于中小型应用。
6、FLOAT和DOUBLE都是浮点数类型。FLOAT有8位精度,占用4个字节,而DOUBLE有18位精度,占用8个字节,因此DOUBLE能表示更大范围和更精确的数值。
7、CHAR_LENGTH函数返回字符串的字符数,而LENGTH函数返回字符串的字节数。对于非Unicode字符集,两者结果相同;但对于Unicode或其他多字节字符集,CHAR_LENGTH计算字符数,LENGTH计算字节数,可能不同。
8、MySQL中的InnoDB存储引擎支持四种事务隔离级别:READ UNCOMMITTED(读未提交),可能导致脏读;READ COMMITTED(读已提交),防止脏读但可能出现不可重复读;REPEATABLE READ(可重复读),防止脏读和不可重复读,但在某些情况下可能出现幻读;SERIALIZABLE(串行化),最高隔离级别,完全避免了脏读、不可重复读和幻读,但性能最低。
9、ENUM在MySQL中用于定义列,该列只能接受预定义的一组值。例如,创建一个size列,它只能是'Small'、'Medium'或'Large',可以这样定义:`CREATE TABLE size (name ENUM('Small', 'Medium', 'Large'))`;
以上是对MySQL面试题的部分解答,涵盖了自增主键行为、存储引擎特性、MySQL技术特点、Heap表、默认端口、与Oracle的对比、浮点数类型区别、字符长度函数以及事务隔离级别等知识点。
2020-01-04 上传
2021-11-26 上传
2023-12-26 上传
2021-09-26 上传
2021-09-06 上传
2021-09-26 上传
2024-05-31 上传
海拥✘
- 粉丝: 20w+
- 资源: 408
最新资源
- 全国江河水系图层shp文件包下载
- 点云二值化测试数据集的详细解读
- JDiskCat:跨平台开源磁盘目录工具
- 加密FS模块:实现动态文件加密的Node.js包
- 宠物小精灵记忆配对游戏:强化你的命名记忆
- React入门教程:创建React应用与脚本使用指南
- Linux和Unix文件标记解决方案:贝岭的matlab代码
- Unity射击游戏UI套件:支持C#与多种屏幕布局
- MapboxGL Draw自定义模式:高效切割多边形方法
- C语言课程设计:计算机程序编辑语言的应用与优势
- 吴恩达课程手写实现Python优化器和网络模型
- PFT_2019项目:ft_printf测试器的新版测试规范
- MySQL数据库备份Shell脚本使用指南
- Ohbug扩展实现屏幕录像功能
- Ember CLI 插件:ember-cli-i18n-lazy-lookup 实现高效国际化
- Wireshark网络调试工具:中文支持的网口发包与分析