当前位置: 首页 > news >正文

关于Mysql的面试题(实时更新中~)

一、主键约束与“not null unique”区别

1、作为Primary Key的域/域组不能为null,而Unique Key可以。

2、在一个表中只能有一个Primary Key,而多个Unique Key可以同时存在。unique not null 可以 将表的一列或多列定义为唯一性属性,而primary key设为多列时,仅能保证多列之和是唯一的, 具体到某一列可能会重复。

3、更大的区别在逻辑设计上。Primary Key一般在逻辑设计中用作记录标识,这也是设置 Primary Key的本来用意,而Unique Key只是为了保证域/域组的唯一性。

二、数据库设计的三大范式

什么是范式?

为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。 在关系型数据库中这种规则就叫做范式。

第一范式(1NF)确保每列保持原子性

第二范式(2NF)属性完全依赖于主键

第三范式(3NF)属性不依赖于其它非主属性属性直接依赖于主键

三、MyISAM和InnoDB的区别:

MySQL从5.5之后,默认采用InnoDB引擎。Innodb支持事物,对比MylISAM的存储引擎,InnoDB写的处理效率差一些,并且会占用更多的磁盘空间以保存数据和索引。MyISAM只缓存索引,不缓存真实数据;InnoDB不仅缓存索引还要缓存真实数据,对内存要求较高,而且内存大小对性能有决定性的影响。

MyISAM提供了大量的特性,包括全文索引、压缩、空间函数(GIS)等,但MyISAM不支持事务、行级锁、外键,有一个毫无疑问的缺陷就是崩溃后无法安全恢复。  5.5之前默认的存储引擎 。优势是访问的速度快,对事务完整性没有要求或者以SELECT、INSERT为主的应用,故而count(*)的查询效率很高。

四、having和where的区别:

where是对表中每一条数据进行判断

having是对分组聚合后的数据进行条件筛选

五、delete truncate drop的区别:

delete只删数据; truncate不仅删数据 还把索引删掉了

drop 不仅删数据,还删除了索引,表结构也删了

 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Python 基础——元组
  • Unity UGUI 之 Graphic Raycaster
  • 珈和科技完成全国首个农险服务类数据产品入表,实现数据资产化
  • ModbusRTU转Profinet协议转化网关(建议收藏吖)
  • lua 游戏架构 之 SceneLoad场景加载(一)
  • 【Nacos】Nacos服务注册与发现 心跳检测机制源码解析
  • Unity UGUI 之EventSystem
  • PyTorch Autograd内部实现
  • RICHTEK立锜科技 WIFI 7电源参考设计
  • OCC 创建点线面体
  • js 只读对象
  • CSRF+XSS组合攻击实战
  • MySQL1.试建产品库
  • 网友提问:display:flex和display:box有什么区别?
  • k8s核心操作_存储抽象_K8S中使用Secret功能来存储密码_使用免密拉取镜像_k8s核心实战总结---分布式云原生部署架构搭建033
  • 4. 路由到控制器 - Laravel从零开始教程
  • C++类中的特殊成员函数
  • ES6简单总结(搭配简单的讲解和小案例)
  • JavaScript-Array类型
  • JAVA并发编程--1.基础概念
  • js 实现textarea输入字数提示
  • js中的正则表达式入门
  • linux安装openssl、swoole等扩展的具体步骤
  • Linux后台研发超实用命令总结
  • nginx 配置多 域名 + 多 https
  • Redis中的lru算法实现
  • Vue学习第二天
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 坑!为什么View.startAnimation不起作用?
  • 理清楚Vue的结构
  • 你不可错过的前端面试题(一)
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 软件开发学习的5大技巧,你知道吗?
  • 通过git安装npm私有模块
  • ​一文看懂数据清洗:缺失值、异常值和重复值的处理
  • ## 1.3.Git命令
  • #《AI中文版》V3 第 1 章 概述
  • #1015 : KMP算法
  • #pragma data_seg 共享数据区(转)
  • #QT(QCharts绘制曲线)
  • (1)(1.13) SiK无线电高级配置(五)
  • (二)正点原子I.MX6ULL u-boot移植
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (附源码)springboot车辆管理系统 毕业设计 031034
  • (南京观海微电子)——COF介绍
  • (三)elasticsearch 源码之启动流程分析
  • (算法)Game
  • (已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
  • (译)2019年前端性能优化清单 — 下篇
  • (转) RFS+AutoItLibrary测试web对话框
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • (转载)hibernate缓存
  • (转载)利用webkit抓取动态网页和链接
  • ****Linux下Mysql的安装和配置