postgresql 单表最大记录数 postgresql 入门( 二 )


以下是我设置汽车服务数据库的方式:
CREATE TABLE autorepairs ( date date, repairs varchar(80), location varchar(80), cost numeric(6,2));我本可以在一行内输入,但为了更好地说明结构,并表明 PostgreSQL 不会解释制表符和换行的空白,我分成了多行 。字段包含在括号中,每个变量名和数据类型与下一个变量用逗号分隔(最后一个除外),命令以分号结尾 。所有命令都必须以分号结尾!
第一个变量名是 date,它的数据类型也是 date,这在 PostgreSQL 中没关系 。第二个和第三个变量 repairs 和 location 都是 varchar(80) 类型,这意味着它们可以是最多 80 个任意字符(字母、数字等) 。最后一个变量 cost 使用 numeric 类型 。括号中的数字表示最多有六位数字,其中两位是小数 。最初,我尝试了 real 类型,这将是一个浮点数 。real 类型的问题是作为数据类型在使用时,在遇到 WHERE 子句,类似 WHERE cost = 0 或其他任何特定数字 。由于 real 值有些不精确,因此特定数字将永远不会匹配 。
输入数据
接下来,你可以使用 INSERT INTO 命令添加一些数据(在 PostgreSQL 中称为行):
INSERT INTO autorepairs VALUES ('2017-08-11', 'airbag recall', 'dealer', 0);请注意,括号构成了一个值的容器,它必须以正确的顺序,用逗号分隔,并在命令末尾加上分号 。date 和 varchar(80) 类型的值必须包含在单引号中,但数字值(如 numeric)不用 。作为反馈,你应该会看到:
INSERT 0 1与常规终端会话一样,你会有输入命令的历史记录,因此,在输入后续行时,通常可以按向上箭头键来显示最后一个命令并根据需要编辑数据,从而节省大量时间 。
如果出了什么问题怎么办?使用 UPDATE 更改值:
UPDATE autorepairs SET date = '2017-11-08' WHERE repairs = 'airbag recall';或者,也许你不再需要表中的行 。使用 DELETE:
DELETE FROM autorepairs WHERE repairs = 'airbag recall';这将删除整行 。
最后一件事:即使我在 PostgreSQL 命令中一直使用大写字母(在大多数文档中也这么做),你也可以用小写字母输入,我也经常如此 。
输出数据
如果你想展示数据,使用 SELECT:
SELECT * FROM autorepairs ORDER BY date;没有 ORDER BY 的话,行将不管你输入的内容来显示 。例如,以下就是我终端中输出的我的汽车服务数据:
SELECT date, repairs FROM autorepairs ORDER BY date; date | repairs -----------+-----------------------------------------------------------------2008-08-08 | oil change, air filter, spark plugs2011-09-30 | 35000 service, oil change, rotate tires/balance wheels2012-03-07 | repl battery2012-11-14 | 45000 maint, oil/filter2014-04-09 | 55000 maint, oil/filter, spark plugs, air/dust filters2014-04-21 | replace 4 tires2014-04-21 | wheel alignment2016-06-01 | 65000 mile service, oil change2017-05-16 | oil change, replce oil filt housing2017-05-26 | rotate tires2017-06-05 | air filter, cabin filter,spark plugs2017-06-05 | brake pads and rotors, flush brakes2017-08-11 | airbag recall2018-07-06 | oil/filter change, fuel filter, battery svc2018-07-06 | transmission fl, p steering fl, rear diff fl2019-07-22 | oil & filter change, brake fluid flush, front differential flush2019-08-20 | replace 4 tires2019-10-09 | replace passenger taillight bulb2019-10-25 | replace passenger taillight assembly(19 rows)要将此发送到文件,将输出更改为:
\o autorepairs.txt然后再次运行 SELECT 命令 。
退出 PostgreSQL
最后,在终端中退出 PostgreSQL,输入:
quit或者它的缩写版:
\q【postgresql 单表最大记录数 postgresql 入门】虽然这只是 PostgreSQL 的简要介绍,但我希望它展示了将数据库用于这样的简单任务既不困难也不费时 。

推荐阅读