Bootstrap

2024全网最新SQL优化面试专题及答案


不区分

SELECT VERSION(), CURRENT_DATE;

SeLect version(), current_date;

seleCt vErSiOn(), current_DATE;

所有这些例子都是一样的,Mysql 不区分大小写。

2、Mysql 的技术特点是什么?


Mysql 数据库软件是一个客户端或服务器系统,其中包括:支持各种客户端程序和库的多

线程 SQL 服务器、不同的后端、广泛的应用程序编程接口和管理工具。

3、Heap 表是什么?


HEAP 表存在于内存中,用于临时高速存储。

BLOB 或 TEXT 字段是不允许的

只能使用比较运算符=,<,>,=>,= <

HEAP 表不支持 AUTO_INCREMENT

索引不可为 NULL

4、Mysql 服务器默认端口是什么?


Mysql 服务器的默认端口是 3306。

5、与 Oracle 相比,Mysql 有什么优势?


Mysql 是开源软件,随时可用,无需付费。

Mysql 是便携式的

带有命令提示符的 GUI。

使用 Mysql 查询浏览器支持管理

6、如何区分 FLOAT 和 DOUBLE?


以下是 FLOAT 和 DOUBLE 的区别:

浮点数以 8 位精度存储在 FLOAT 中,并且有四个字节。

浮点数存储在 DOUBLE 中,精度为 18 位,有八个字节。

7、区分 CHAR_LENGTH 和 LENGTH?


CHAR_LENGTH 是字符数,而 LENGTH 是字节数。Latin 字符的这两个数据是相同的,但是对

于 Unicode 和其他编码,它们是不同的。

8、请简洁描述 Mysql 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?


SQL 标准定义的四个隔离级别为:

read uncommited :读到未提交数据

read committed:脏读,不可重复读

repeatable read:可重读

serializable :串行事物

9、在 Mysql 中 ENUM 的用法是什么?


ENUM 是一个字符串对象,用于指定一组预定义的值,并可在创建表时使用。

Create table size(name ENUM('Smail,‘Medium’,‘Large’);

10、如何定义 REGEXP?


REGEXP 是模式匹配,其中匹配模式在搜索值的任何位置。

11、CHAR 和 VARCHAR 的区别?


以下是 CHAR 和 VARCHAR 的区别:

CHAR 和 VARCHAR 类型在存储和检索方面有所不同

CHAR 列长度固定为创建表时声明的长度,长度值范围是 1 到 255

当 CHAR 值被存储时,它们被用空格填充到特定长度,检索 CHAR 值时需删除尾随空格。

12、列的字符串类型可以是什么?


字符串类型是:

SET

BLOB

ENUM

CHAR

TEXT

VARCHAR

13、如何获取当前的 Mysql 版本?


SELECT VERSION();用于获取当前 Mysql 的版本。

14、Mysql 中使用什么存储引擎?


存储引擎称为表类型,数据使用各种技术存储在文件中。

技术涉及:

Storage mechanism

Locking levels

Indexing

Capabilities and functions.

15、Mysql 驱动程序是什么?


以下是 Mysql 中可用的驱动程序:

PHP 驱动程序

JDBC 驱动程序

ODBC 驱动程序

CWRAPPER

PYTHON 驱动程序

PERL 驱动程序

RUBY 驱动程序

CAP11PHP 驱动程序

Ado.net5.mxj

16、TIMESTAMP 在 UPDATE CURRENT_TIMESTAMP 数据类型上做什么?


创建表时 TIMESTAMP 列用 Zero 更新。只要表中的其他字段发生更改,UPDATE

CURRENT_TIMESTAMP 修饰符就将时间戳字段更新为当前时间。

17、主键和候选键有什么区别?


表格的每一行都由主键唯一标识,一个表只有一个主键。

主键也是候选键。按照惯例,候选键可以被指定为主键,并且可以用于任何外键引用。

18、如何使用 Unix shell 登录 Mysql?


我们可以通过以下命令登录:

[mysql dir]/bin/mysql -h hostname -u

19、 myisamchk 是用来做什么的?


它用来压缩 MyISAM 表,这减少了磁盘或内存使用。

20、ISAM 是什么?


ISAM 简称为索引顺序访问方法。它是由 IBM 开发的,用于在磁带等辅助存储系统上存储和

检索数据。

21、如何控制 HEAP 表的最大尺寸?


Heal 表的大小可通过称为 max_heap_table_size 的 Mysql 配置变量来控制。

22、MyISAM Static 和 MyISAM Dynamic 有什么区别?


在 MyISAM Static 上的所有字段有固定宽度。动态 MyISAM 表将具有像 TEXT,BLOB 等字

段,以适应不同长度的数据类型。点击这里有一套最全阿里面试题总结。

MyISAM Static 在受损情况下更容易恢复。

23、federated 表是什么?


federated 表,允许访问位于其他服务器数据库上的表。

24、如果一个表有一列定义为 TIMESTAMP,将发生什么?


每当行被更改时,时间戳字段将获取当前时间戳。

25、列设置为 AUTO INCREMENT 时,如果在表中达到最大值,会发生什么情况?


它会停止递增,任何进一步的插入都将产生错误,因为密钥已被使用。

26、怎样才能找出最后一次插入时分配了哪个自动增量?


;