网站首页 > 文章精选 正文
面试中经常被问到的 MySQL 题目,本文总结了面试中的经典问题。
1.主键(primary key)和候选键(candidate key)有什么区别?
候选键 - 候选键可以是任何列或可以作为数据库中唯一键的列组合。一张表中可以有多个候选键。每个候选键都可以作为主键。
主键 - 主键是唯一标识记录的列或列组合。只有一个候选键可以是主键。
2. NOW() 和 CURRENT_DATE() 有什么区别?
NOW () 命令用于以小时、分钟和秒显示当前年、月、日。
CURRENT_DATE() 仅显示当前年、月和日期。
3. MySQL 表中允许多少个触发器?
以下是 MySQL 表中允许的触发器。
- 插入前
- 插入后
- 更新前
- 更新后
- 删除前
- 删除后
4.我们可以为索引创建多少列?
16
5. 如何将数据从一张表复制到另一张表?
NSERT INTO table2 (id,uid,changed,status,assign_status) SELECT id,uid,now(),'Pending','Assigned' FROM table1
6.如何在不复制数据的情况下复制表?
CREATE TABLE users_bck SELECT * FROM users WHERE 1=0;
7.什么是 MySQL?
MySQL 是一个免费提供的开源关系数据库管理系统 (RDBMS),它使用结构化查询语言 (SQL)。
SQL 是用于在数据库中添加、访问和管理内容的最流行的语言。它以其快速处理、久经考验的可靠性、易用性和使用灵活性而著称。MySQL 是几乎每个开源 PHP 应用程序的重要组成部分。基于 PHP 和 MySQL 的脚本的好例子是 WordPress、Joomla、Magento 和 Drupal。
8.列出MySQL的特点?
关系数据库管理系统(RDBMS):MySQL 是一个关系数据库管理系统。
- 易于使用:MySQL 易于使用。您只需掌握 SQL 的基本知识。只需几个简单的 SQL 语句,您就可以构建 MySQL 并与之交互。
- 它是安全的:MySQL 包含一个可靠的数据安全层,可以保护敏感数据免受入侵者的侵害。密码在 MySQL 中是加密的。
- 它是可扩展的:MySQL 可以处理几乎任何数量的数据,多达 5000 万行或更多。默认文件大小限制约为 4 GB。但是,您可以将此数字增加到 8 TB 数据的理论限制。
- 在许多操作系统上兼容:MySQL 兼容在许多操作系统上运行。
- 允许回滚:MySQL 允许事务回滚、提交和崩溃恢复。
- 高性能:由于其独特的存储引擎架构,MySQL 更快、更可靠、更便宜。
- 高灵活性:MySQL 支持大量的嵌入式应用程序,这使得 MySQL 非常灵活。
- 高生产力:MySQL 使用触发器、存储过程和视图,允许开发人员提供更高的生产力。
9. transaction 和 ACID 属性是什么意思?
事务是工作的逻辑单元,应该执行所有步骤或不执行任何步骤。ACID 是原子性、一致性、隔离性和持久性的缩写,它们是任何事务的属性。
10. 什么是堆表?
堆是没有聚集索引的表。可以在存储为堆的表上创建一个或多个非聚集索引。数据存储在堆中而不指定顺序。通常数据最初是按照行插入表中的顺序存储的,但是数据库引擎可以在堆中移动数据以有效地存储行;因此无法预测数据顺序。要保证从堆返回的行的顺序,您必须使用 ORDER BY 子句。要指定行的存储顺序,请在表上创建聚集索引,使表不是堆。
11. 聚集表与堆表
堆表
- 数据不按任何特定顺序存储
- 具体数据不能快速检索,除非也有非聚集索引
- 数据页未链接,因此顺序访问需要回溯到索引分配映射 (IAM) 页
- 由于没有聚集索引,因此不需要额外的时间来维护索引
- 由于没有聚集索引,所以不需要额外的空间来存储聚集索引树
- 这些表在 sys.indexes 目录视图中的 index_id 值为 0
集群表
- 数据按照聚集索引键的顺序存储
- 如果查询使用索引列,可以根据聚集索引键快速检索数据
- 链接数据页以实现更快的顺序访问
- 需要额外的时间来维护基于 INSERTS、UPDATES 和 DELETES 的聚集索引
- 需要额外的空间来存储聚集索引树
- 这些表在 sys.indexes 目录视图中的 index_id 值为 1
12. 区分 FLOAT 和 DOUBLE?
以下是 FLOAT 和 DOUBLE 的区别:
- 浮点数以八位精度存储在 FLOAT 中,它有四个字节。
- 浮点数以 18 位精度存储在 DOUBLE 中,它有 8 个字节。
13. 使用 CREATE 语句可以创建哪些对象?
以下对象是使用 CREATE 语句创建的:
- DATABASE
- EVENT
- FUNCTION
- INDEX
- PROCEDURE
- TABLE
- TRIGGER
- USER
- VIEW
14.主键和唯一键有什么区别
虽然两者都用于强制定义的列的唯一性,但主键会创建聚集索引,而唯一键会在列上创建非聚集索引。主键不允许'NULL',但唯一键允许它。
猜你喜欢
- 2025-05-09 面试必问的 MySQL 四种隔离级别,看完吊打面试官
- 2025-05-09 面试官:mysql自增长id用完了怎么办?这是我见过最中肯的答案了
- 2025-05-09 阿里面试:MySQL Binlog有哪些格式?底层原理?优缺点?
- 2025-05-09 1.5万字+30张图盘点程序员面试必会MySQL索引常见的11个知识点
- 2025-05-09 面试中的老大难-mysql事务和锁,一次性讲清楚
- 2025-05-09 手把手指导Linux系统centos7安装数据库MySQL5.7
- 2025-05-09 面试官问我MySQL索引为啥用B+树?我让他去问作者
- 2025-05-09 MySQL面试题:自增ID达到上限了会出现什么问题?
- 2025-05-09 MySQL索引失效问题,看完手撕面试官
- 2025-05-09 阿里面试:MySQL死锁的原因?解决方案有哪些?
- 06-18技术分享 | Web自动化之Selenium安装
- 06-18postman系列之批量执行接口测试用例
- 06-18Junit5 架构、新特性及基本使用(常用注解与套件执行)
- 06-18「技术分享」postman完整的接口测试
- 06-18HTTP接口测试工具Postman(接口测试url)
- 06-18postman--实现接口自动化测试(postman接口自动化框架)
- 06-18讲解LDO(讲解的近义词)
- 06-18震撼!2020国际摄影奖获奖佳作欣赏
- 最近发表
- 标签列表
-
- newcoder (56)
- 字符串的长度是指 (45)
- drawcontours()参数说明 (60)
- unsignedshortint (59)
- postman并发请求 (47)
- python列表删除 (50)
- 左程云什么水平 (56)
- 计算机网络的拓扑结构是指() (45)
- 编程题 (64)
- postgresql默认端口 (66)
- 数据库的概念模型独立于 (48)
- 产生系统死锁的原因可能是由于 (51)
- 数据库中只存放视图的 (62)
- 在vi中退出不保存的命令是 (53)
- 哪个命令可以将普通用户转换成超级用户 (49)
- noscript标签的作用 (48)
- 联合利华网申 (49)
- swagger和postman (46)
- 结构化程序设计主要强调 (53)
- 172.1 (57)
- apipostwebsocket (47)
- 唯品会后台 (61)
- 简历助手 (56)
- offshow (61)
- mysql数据库面试题 (57)