SQL学习指南——背景知识 关系型数据库中每个数据表都包含能够唯一标识某一行的信息称为主键 primary key以及完整描述实体所需的额外信息一些数据表中还包含了导航到其他数据表的信息这些列称为外键foreign key)术语术语定义实体数据库用户关注的对象包括客户、部门、地理位置等列数据表中存储的数据片段行列的集合共同用于完整地描述某个实体或对某个实体的操作也称为记录表行的集合要么保存在内存中非持久性要么保存在永久存储中持久性结果集非持久性数据表的别称通常是SQL查询的结果主键用于唯一标识数据表中各行的一列或多列sql语句只定义了必要的输入和输出至于如何执行语句则由名为优化器的数据库引擎组件来处理优化器的工作是检查SQL语句考虑数据表的配置以及可用的索引并决定最有效的执行路径好吧也未必总是最有效的大多数数据库引擎都允许你通过指定优化器提示来影响优化器的决策比如建议使用特定的索引等但大多数SQL用户从来不需要深入到该复杂层面把这种事交给数据库管理员或性能调优专家来处理就行了。