1009.表基础-初识表
表基础
有行有列,列有列名,列是固定的,行数有增有减的。
SQL并不保证表中行的顺序。当一个表被读取时,表中的行将以非特定顺序出现,除非明确地指定需要排序。
每一列都有一个数据类型(大类数据约束)。
建表 create table ,删表 drop table, 一般建表前删表。
SQL不会为行分配唯一的标识符,因此在一个表中可能会存在一些完全相同的行。
每一列都有一个数据类型。数据类型约束着一组可以分配给列的可能值,并且它为列中存储的数据赋予了语义,这样它可以用于计算。
一些常用的数据类型是:用于整数的integer;可以用于分数的numeric;用于字符串的text,用于日期的date,用于一天内时间的time以及可以同时包含日期和时间的timestamp。
要创建一个表,我们要用到CREATE TABLE命令。
通常,我们为表和列赋予的名称都会表明它们存储着什么类别的数据。因此让我们再看一个更现实的例子:
CREATE TABLE products (
product_no integer,
name text,
price numeric
);
Tips:当我们创建很多相关的表时,最好为表和列选择一致的命名模式。例如,一种选择是用单数或复数名词作为表名,每一种都受到一些理论家支持。
一个表能够拥有的列的数据是有限的,根据列的类型,这个限制介于250和1600之间。
使用DROP TABLE命令来移除表
DROP TABLE products;
尝试移除一个不存在的表会引起错误。在SQL脚本中在创建每个表之前无条件地尝试移除它的做法是很常见的。
(如果你喜欢,可以使用DROP TABLE IF EXISTS变体来防止出现错误消息,但这并非标准SQL)