网站首页 > 文章精选 正文
什么是SQL?
结构化的查询语言(Structured Query Language)简称SQL,是一种数据库查询语言。
作用是用于存储数据、查询、更新和管理关系型数据库
SQL中的约束有哪几种?
1、非空约束 not null。用来控制字段中的值不能为空(null)
2、唯一约束 unique 。用来控制字段中的值唯一,不允许重复
3、主键约束 primary key。用来唯一的标识某个列,不允许为空,不允许重复
4、外键约束 foreign key。用来对应参照完整性,建立两个表之间的链接关系。
5、默认约束 default 。用来指定某个列的默认值。
drop、delete、truncate的区别
drop | delete | truncate | |
类型 | DDL | DML | DDL |
回滚 | 不可回滚 | 可回滚 | 不可回滚 |
删除 内容 | 删除表、删除库 删除表结构 | 删除表中的数据 保留表结构 | 删除表中所有数据 保留表结构 |
varchar(20)中的20代表什么意思?int(20)中的20代表什么意思?
varchar(20)表示最多可以存放20个字符
int(20)表示最大显示宽度为20,但是在内存中只占4个字节
索引的优点有哪些?缺点有哪些?
优点:
1、加快查询数据的查询速度
2、提高系统的性能
缺点:
1、在创建索引和维护索引时需要耗费大量的时间成本
2、索引会占用物理存储空间
事务的4大特性有哪些?
1、原子性。它是事务的最小执行单位,不可以再分割。用来保证一组动作要么都执行,要么都不执行。
2、一致性。一组事务执行的前后数据必须保持一致。
3、隔离性。多个用户同时访问数据库时,每个用户的事务不被其他用户的事务干扰。
4、持久性。当事务被提交以后,其对数据的修改是持久保存的,不被其他任何问题影响。
什么是死锁?如何处理死锁?
死锁是指两个或两个以上的进程在执行过程中,因为竞争共享资源而造成的互相等待的现象。
为了避免出现死锁现象,可以设置超时时间,即超时后自动释放掉。也可以发起死锁检测,将其中的一个事务进行回滚,让其他事务正常执行。
什么是3范式?
第一范式指的是数据库表中的任意属性都具有原子性,不可以进行分割
第二范式指的是对记录的唯一性约束,要求记录要有唯一标识
第三范式指的是对字段冗余性的约束,即要求字段没有冗余
视图的优点和缺点有哪些?
优点
1、数据简单化,所见即所得
2、保证安全性,用户只能查看或修改他们能够看到的数据
3、独立性,用来屏蔽真实表中结构变化带来的影响
缺点:
1、使用过程相对复杂,性能相对较差
2、修改不方便
char类型和varchar类型的区别有哪些?
1、char类型的长度一旦确定则不可以发生改变,varchar可以改变
2、char类型的数据如果字符长度比声明的长度小,那么会使用空格进行补位;
varchar类型的数据如果字符的长度比声明的长度小,那么会自动变成实际的字符长度
3、char类型数据方便存储和查询,操作速度比varchar要快,但是牺牲了空间。varchar正好相反,节省空间,但是效率没有char类型高
猜你喜欢
- 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死锁的原因?解决方案有哪些?
- 最近发表
-
- Vue3+Django4全新技术实战全栈项目|高清完结
- 工厂模式+策略模式消除 if else 实战
- 每天一个 Python 库:httpx异步请求,让接口测试飞起来
- 如何高效实现API接口的自动化测试?
- 前端工程化:从“手忙脚乱”到“从容协作”的进化记
- 使用C#创建服务端Web API(c#开发web服务器)
- SpringBoot之旅第四篇-web开发(springboot做web项目)
- 一文读懂SpringMVC(一文读懂新型政策性金融工具)
- Rust Web编程:第十二章 在 Rocket 中重新创建我们的应用程序
- Apache Druid 数据摄取——本地数据和kafka流式数据 一篇文章看懂
- 标签列表
-
- 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)