在关系型数据库中,数据表中的一行通常被称为元组或记录。这两个术语经常可以互换使用,但在不同的理论背景或数据库语境中,它们有细微的侧重。
元组是关系模型(由埃德加·科德提出)中的正式数学术语。它指的是一组有限且有序的属性值的集合。在关系数据库中,一个元组对应表中的一行数据。
记录则是一个更偏向工程和实用层面的称呼,尤其在数据库设计和开发过程中被广泛使用。它指的是一条完整的、包含多个字段(列)的数据条目。例如,在一个学生信息表中,一个学生的所有个人信息(学号、姓名、年龄、班级等)组成了一条记录。
为了帮助你清晰地理解它们之间的关系,请看下面的对照表:
| 概念 | 含义 | 表现形式(表格中) | 通俗叫法 |
|---|---|---|---|
| 行 | 表格中水平方向的一组数据 | 表中的每一行水平排列的数据行 | 行 |
| 元组 | 关系模型中的正式术语,表示一组属性值的集合 | 表中的一行 | 元组 |
| 记录 | 数据库操作与编程中的常用术语,表示一条完整的数据 | 表中的一行 | 记录 |
举例说明
假设有一个名为 学生表 的数据表,其结构如下:
SELECT 学号, 姓名, 年龄, 班级 FROM 学生表;
如果该表中有如下数据:
+--------+--------+------+--------+ | 学号 | 姓名 | 年龄 | 班级 | +--------+--------+------+--------+ | S001 | 张三 | 20 | 计算机1班 | | S002 | 李四 | 21 | 计算机1班 | | S003 | 王五 | 19 | 计算机2班 | +--------+--------+------+--------+
在这个示例中:
带有具体数据的每一行(如
S001, 张三, 20, 计算机1班)就是一个元组。在编写查询语句(如
SELECT * FROM 学生表 WHERE 学号 = 'S001')时,返回的“S001, 张三, 20, 计算机1班”这条数据被称为一条记录。
补充说明:与“列”的对比
为了让你更全面地理解这个概念,这里也提一下它的对立面。数据表中的列被称为属性或字段。
| 术语(行方向) | 术语(列方向) |
|---|---|
| 元组 (Tuple) | 属性 (Attribute) |
| 记录 (Record) | 字段 (Field) |
总结来说,无论是在理论书籍中还是在日常的开发工作中,当你谈论数据表中的“行”时,最精确的正式名称是元组,而最常用的通俗称呼是记录。在诸如MySQL、PostgreSQL、Oracle等数据库中,你可能更多地听到记录或行这两个词,但其核心所指都是一样的。