怎样进行PostgreSQL数据库入门

技术怎样进行PostgreSQL数据库入门本篇文章为大家展示了怎样进行PostgreSQL数据库入门,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。安装、设置、创建和开始使用 Po

本文向您展示了如何开始使用PostgreSQL数据库。内容简洁易懂。一定会让你眼前一亮。希望通过这篇文章的详细介绍,你能有所收获。

安装、设置、创建并开始使用PostgreSQL数据库。

每个人都可能有一些东西要保存在数据库中。即使你坚持使用纸质文档或电子文档,它们也会变得非常麻烦。纸质文档可能会丢失或混淆,您需要访问的电子信息可能隐藏在段落和页面的深处。

我在从事医疗工作的时候,用PostgreSQL跟踪我的住院患者名单,提交住院患者的信息。我把每天的病人名单打印在口袋里,这样我就可以快速知道病人房间、诊断或其他细节的任何变化,并快速记录下来。

我以为一切都很好,直到去年我妻子决定买一辆新车,我“接管”了她的旧车。她保留着汽车维修服务收据的文件夹,但随着时间的推移,变得凌乱不堪。我认为PostgreSQL将是跟踪这些信息的更好方法,而不是花时间筛选所有的笔记来找出什么时候做了什么。

安装 PostgreSQL

上次用PostgreSQL已经有一段时间了,已经忘记怎么用了。其实我连电脑都没装。安装它是第一步。我使用Fedora,所以我在控制台中运行它:

请注意,您可以在不使用sudo的情况下使用列表选项。该命令返回了一长串包。看完之后,我决定只需要三个:postgresql、postgresql-server和postgresql-docs。

为了知道下一步该做什么,我决定检查PostgreSQL文档。参考内容非常丰富,其实令人望而生畏。幸运的是,我发现了一些我在升级Fedora时做的笔记,希望能有效导出数据库,在新版本中重启PostgreSQL,导入旧数据库。

00-1010不同于大多数其他软件,你不能只安装PostgreSQL就开始使用。您必须提前执行两个基本步骤:首先,您需要设置PostgreSQL,其次,您需要启动它。您必须以root用户身份执行这些操作(sudo在这里不起作用)。

要进行设置,请输入:

PostgreSQL-setupndash;Initdb这将确定PostgreSQL数据库在计算机上的位置。然后(仍然是root用户)输入以下两个命令:

systemlstartspostgresql . service systemctlenablepostgresql . service的第一个命令为当前会话启动PostgreSQL(如果关闭机器,PostgreSQL也会关闭)。第二个命令使PostgreSQL在随后的重新启动中自动启动。

设置 PostgreSQL

PostgreSQL正在运行,但您仍然无法使用它,因为您还没有用户。为此,您需要切换到特殊用户postgres。当您仍以root用户身份运行时,请输入:

Supostgres因为您是以root用户身份执行此操作,所以不需要输入密码。根用户可以在不知道密码的情况下作为任何用户操作;这是使它强大而危险的原因之一。

既然您是postgres,请运行以下两个命令来创建用户(创建用户gregp),如下所示:

您可能会看到错误消息,例如:无法切换到/home/gregp。这仅仅意味着用户postgres不能访问该目录。尽管如此,您的用户和数据库已经创建。接下来,输入exit并按两次enter,这样您就可以返回到原始用户(root)了。

00-1010要开始使用PostgreSQL,请在命令行中输入psql。您应该在每一行的左侧看到类似gregp=的内容,以表明您正在使用PostgreSQL,并且您只能使用它理解的命令。你会自动得到一个数据库(我的名字是gregp),里面什么都没有。对于PostgreSQL,数据库只是一个工作空间。在空间中,您可以创建表格。一个表包含一个变量列表,表中的每个变量都是构成数据库的数据。

我是这样建立汽车服务数据库的:

CREATETABL

E autorepairs (        date            date,        repairs         varchar(80),        location        varchar(80),        cost            numeric(6,2));

我本可以在一行内输入,但为了更好地说明结构,并表明 PostgreSQL 不会解释制表符和换行的空白,我分成了多行。字段包含在括号中,每个变量名和数据类型与下一个变量用逗号分隔(最后一个除外),命令以分号结尾。所有命令都必须以分号结尾!

第一个变量名是 date,它的数据类型也是 date,这在 PostgreSQL 中没关系。第二个和第三个变量 repairslocation 都是 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);

请注意,括号构成了一个值的容器,它必须以正确的顺序,用逗号分隔,并在命令末尾加上分号。datevarchar(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数据库入门,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/125349.html

(0)

相关推荐

  • 抖音真人赞10个自助下单,介绍下抖音刷真人赞多少钱?

    技术抖音真人赞10个自助下单,介绍下抖音刷真人赞多少钱?于抖音新手怎么快速涨粉丝?
    1、大量关注别人,这样必定会带来许多的粉
    2、评论别人,不停地评论陌生人的抖音,只要看到有人发抖音就去留下高质量的评论,每次都坐上沙发,

    测评 2021年11月9日
  • Python如何爬取视频网站弹幕并做成词云图

    技术Python如何爬取视频网站弹幕并做成词云图这篇文章将为大家详细讲解有关Python如何爬取视频网站弹幕并做成词云图,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。大家

    攻略 2021年10月26日
  • 大圈是什么意思,太阳周围有个大圈是什么意思

    技术大圈是什么意思,太阳周围有个大圈是什么意思日晕是一种大气光学现象,是日光通过卷层云时,受到冰晶的折射或反射而形成的大圈是什么意思。当光线射入卷层云中的冰晶后,经过两次折射,分散成不同方向的各色光。有卷层云时,天空中会

    生活 2021年10月21日
  • oracle11g dataguard如何切换

    技术oracle11g dataguard如何切换这篇文章主要介绍“oracle11g dataguard如何切换”,在日常操作中,相信很多人在oracle11g dataguard如何切换问题上存在疑惑,小编查阅了各式

    攻略 2021年11月11日
  • scrapy数据存储在mysql数据库的方式是什么

    技术scrapy数据存储在mysql数据库的方式是什么scrapy数据存储在mysql数据库的方式是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能

    攻略 2021年12月4日
  • [zoj3990]Tree Equation

    技术[zoj3990]Tree Equation [zoj3990]Tree Equation记$dep(T)$为树$T$的深度(根节点深度为0),则有$\begin{cases}dep(A+B)=\m

    礼包 2021年10月27日