MySQL面试题(一)

  1. 说说数据库的三范式?
    答:
    第一范式:数据库表的每一列都是不可分割的原子数据项。
    第二范式:非主键列完全依赖于主键,而不能只是依赖于主键的一部分。
    第三范式:非主键列只依赖于主键,不依赖于其他非主键。

  2. 如何获取当前数据库的版本?
    答:使用select version()来获取当前Mysql数据库的版本。

  3. 了解事务么?
    答:事务是由一步或几步数据库操作序列组成的逻辑执行单元,这系列操作要么全部执行,要么全部放弃执行。

  4. 说说事务的4个特性?
    答:ACID。

  5. A是什么?
    答:Atomicity,原子性,代表着一个事务中的所有操作,或者全部完成,或者全部不完成,如果事务在执行过程中发生错误,就会被回滚到事务开始前的状态。

  6. C是什么?
    答:Consistency,一致性,事务执行的结果,必须使数据库从一个一致性状态,变到另一个一致性状态。当数据库中只包含事务成功提交的结果时,数据库处于一致性状态。一致性是通过原子性来保证的。

  7. I是什么?
    答:Isolation,隔离性,由于数据库允许多个并发事务同时对其数据进行读写和修改的能力,隔离性是防止多个事务在并发执行时发生交叉执行而导致数据的不一致结果。

  8. D是什么?
    答:Durability,持久性,只要事务成功提交了,那么对于数据的修改就是永久的,即使系统崩溃也不会影响到这个事务的结果。

  9. 说说char类型的特点?
    答:比如定义了char(10),那么这个长度就是固定的,哪怕输入的只是"abcd"4个字符,占用的空间依旧是10个字节,其他的7个就是空字节。不过char虽然占用空间,但是它的效率高,适用于存储密码的md5值,只要是长度固定的,那么使用char类型就很不错。

  10. 说说varchar类型的特点?
    答:varchar类型长度是可变的,存储的值是每个值占用的字节再加上一个用来记录其长度的字节的长度,所以相比起char类型来说,varchar在空间的使用上比较合理,而char则以空间换时间,效率较高。

发布了289 篇原创文章 · 获赞 302 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/weixin_38106322/article/details/104841658