《SQL实战》书摘(7):创建表¶
正如之前所说,表是存放数据并且定义数据间关系的地方。在创建表的时候,你需要为每个列(有时候也被称为字段或者属性)指派一个名字和一种类型,后者决定了列能够接受的值,比如文本、整数、小数和日期等。定义数据类型是SQL保证数据完整性的一种方式,比如说,定义为日期的列只能接受包括YYYY-MM-DD在内的少数几种标准格式的数据。如果你尝试输入不符合日期格式的字符,比如单词peach,那么你将收到一个错误。
储存在表的数据可以通过SQL语句进行访问、分析或者查询。除此之外,你还可以排序、编辑和查看数据,并在有需要进行修改的时候轻而易举地改变表。
让我们首先在analysis数据库里面创建一个表。
在这个练习中,我们将使用一种经常被讨论的数据:教师工资。清单2-2展示了创建一个名为teachers的表所需的SQL语句。在将这段代码键入至pgAdmin并执行它之前,让我们先来审视一下它。
➊ CREATE TABLE teachers (
❷ id bigserial,
❸ first_name varchar(25),
last_name varchar(50),
school varchar(50),
❹ hire_date date,
❺ salary numeric
❻ );
代码清单2-2:创建一个包含六个列的teachers表
这个表的定义还远远称不上全面。比如说,它缺少一些约束条件,这些条件用于确保必需填写的列必然会有数据,又或者确保我们不会无意中输入重复的值。本书的第8章将对约束条件做详细的介绍,但现在我们暂且先省略它们,先集中精力开始探索数据。