霍格沃兹测试开发学社

《Python测试开发进阶训练营》(随到随学!)
2023年第2期《Python全栈开发与自动化测试班》(开班在即)
报名联系weixin/qq:2314507862

软件测试|SQL分类大概有几种?SQL中什么是主键和外键,它们之间的区别是什么?

在这里插入图片描述

前言

之前一个朋友面试测试开发岗位,面试官问了这个问题,朋友觉得自己没有很好回答这个问题,面试结束之后找到我,我只能帮他总结成这样了,希望能够帮助到那位朋友。

获取更多技术资料,请点击!

SQL语言分为五大类:

DDL(数据定义语言) - Create、Alter、Drop 这些语句自动提交,无需用Commit提交。
DQL(数据查询语言) - Select 查询语句不存在提交问题。
DML(数据操纵语言) - Insert、Update、Delete 这些语句需要Commit才能提交。
DTL(事务控制语言) - Commit、Rollback 事务提交与回滚语句。
DCL(数据控制语言) - Grant、Revoke 授予权限与回收权限语句。

SQL主键和外键:结论

主键和外键是数据库设计中的重要概念,因为它们有助于建立表之间的关系并帮助确保数据的完整性。
一个主键可以唯一地识别一个表中的行,而一个外键则是通过引用相关表的主键将两个表联系在一起。
这里你应该注意的最重要的区别是,主键不能有NULL值,而外键可以接受NULL值。

什么是主键

主键是表中的一个列(或一组列),用于唯一地识别表中的每一行。它不能包含空值,并且在表中的所有行中必须是唯一的。一个表中只允许有一个主键。
一个主键基本上是 “UNIQUE “和 “Not Null “约束的组合。因此,它不能是一个NULL值。关于主键需要注意的另一点是,它的值不能从父表中删除。

什么是外键

外键是一个表中的一个列(或一组列),指的是另一个表中的主键。它被用来在两个表之间建立联系,并被用来在数据库中执行参考完整性。外键基本上是一个表中的字段/列,类似于其他表的主键。
与主键不同,一个表可以有一个以上的外键。而且,在关系数据库中,外键可以包含重复值和空值。一个外键的值可以从子表中删除。

数据库中主键和外键的重要区别

下表强调了主键和外键之间的所有重要区别

Key 主键 外键
Basic 它用于唯一地识别表中的数据。 它用于维护表之间的关系。
Null 它不可能是NULL。 它可以接受NULL值。
重复的 两条或多条记录不能有相同的主键。 它可以为一个外键属性携带重复的值。
Index Primary有聚类索引。 默认情况下,它不是聚类索引。
Tables 可以在临时表上定义主键约束。 它不能被定义在临时表上。

总结

本文主要是对SQL分类,以及主键外键的区别进行了描述,这是一个基本的面试题,希望能够帮助大家解决这一类的面试问题。

获取更多技术资料,请点击!

posted @ 2023-06-15 15:43  霍格沃兹测试开发学社  阅读(46)  评论(0编辑  收藏  举报