postgresql 插入到选择中-ag捕鱼王app官网

当前位置:ag捕鱼王app官网 > > 数据库 > postgresql >

postgresql 插入到选择中

作者:迹忆客 最近更新:2023/05/09 浏览次数:

本教程将学习如何将托管在远程服务器上的数据库中的数据插入到我们本地计算机中的数据库中。我们将使用远程服务提供商 heroku postgresql,它为测试目的提供免费计划。

将远程服务器上托管的数据库中的数据插入本地计算机中的数据库

创建一个新应用并添加一个 postgresql 数据存储。可以通过单击设置链接访问连接到远程服务器的凭据。

数据库凭证

要连接远程数据库,请使用以下命令并确保你没有连接到公司网络,以避免通信失败导致超时错误。

>psql-hec2-52-49-56-163.eu-west-1.compute.amazonaws.com-ddagbp3p323638g-ucvkmaeedgzlxdr

输出:

dagbp3p323638g=>

创建一个名为 remote_employee 的表,该表将保存包含员工信息的记录,例如 idfirst namelast nameemail

dagbp3p323638g=>createtableremote_employee(idserialnotnullunique,first_namevarchar(50),last_namevarchar(50),emailvarchar(50),primarykey(id));createtable

将三个记录添加到 remote_employee 表中,以确保我们有数据可以从远程服务器获取到本地服务器。

dagbp3p323638g=>insertintoremote_employee(first_name,last_name,email)values('john','doe','john@gmail.com');insert01dagbp3p323638g=>insertintoremote_employee(first_name,last_name,email)values('peter','parker','peter@gmail.com');insert01dagbp3p323638g=>insertintoremote_employee(first_name,last_name,email)values('mary','public','mary@gmail.com');insert01

以下查询验证我们的三个记录是否已插入数据库。

dagbp3p323638g=>select*fromremote_employee;id|first_name|last_name|email---- ------------ ----------- -----------------
1|john|doe|john@gmail.com2|peter|parker|peter@gmail.com3|mary|public|mary@gmail.com(3rows)

你必须连接到本地服务器并创建一个名为 local_database 的数据库,该数据库将包含要填充来自远程实体的数据的本地实体。

>psql-upostgrespostgres=#createdatabaselocal_database;createdatabasepostgres=#\clocal_database;youarenowconnectedtodatabase"local_database"asuser"postgres".

创建一个名为 local_employee 的表,其中包含与 remote_employee 相同的列,因为它们包含相同的数据类型。

local_database=#createtablelocal_employee(idserialnotnullunique,first_namevarchar(50),last_namevarchar(50),emailvarchar(50),primarykey(id));createtable

dblink 是一个扩展,它允许我们从其他数据库中查询数据,我们使用以下命令创建一个扩展。

local_database=#createextensiondblink;

在从远程服务器获取数据之前,我们可以使用 dblink_connect 测试连接,如下所示。如果查询返回 ok,这表明我们的远程数据库已经连接成功,我们现在可以执行插入、更新和删除查询。

注意连接名称 temp_conn,我们将在插入查询中使用它。

local_database=#selectdblink_connect('temp_conn','dbname=dagbp3p323638g port=5432 host=ec2-52-49-56-163.eu-west-1.compute.amazonaws.com user=cvkmaeedgzlxdr password=336ea6e67129e8f082140f1b60954dafa33940f17b02e1f580ea45f10401f85e');dblink_connect----------------
ok(1row)

向我们的 local_employee 表插入数据的查询是由一个插入语句和一个对我们远程服务器的选择语句组成的。

通过指定连接名称 temp_conn 和 sql 字符串,使用 dblink 执行 select 语句以获取数据。

local_database=#insertintolocal_employeeselectid,first_name,last_name,emailfromdblink('temp_conn','select id, first_name, last_name, email from remote_employee')astemp_employee(idinteger,first_namevarchar(50),last_namevarchar(50),emailvarchar(50));insert03

remote_employee 中的所有记录都作为临时表 temp_employee 返回,并通过利用 dblink 连接成功插入到本地表 local_employee 中。

local_database=#select*fromlocal_employee;

输出:

id | first_name | last_name |      email
---- ------------ ----------- -----------------
  1 | john       | doe       | john@gmail.com
  2 | peter      | parker    | peter@gmail.com
  3 | mary       | public    | mary@gmail.com
(3 rows)

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

发布时间:2023/03/20 浏览次数:185 分类:postgresql

本文介绍如何在 ubuntu 上找到 postgresql 数据库的配置文件。

发布时间:2023/03/20 浏览次数:409 分类:数据库

本文解释了如何直接从终端/命令行或 psql shell 运行 sql 文件。为此,你需要指定主机名、端口、用户名和数据库名称。

发布时间:2023/03/20 浏览次数:89 分类:postgresql

本文展示了如何列出 postgresql 上的活动连接。

发布时间:2023/03/20 浏览次数:966 分类:postgresql

在 pl/sql 中,你可能需要在 postgres 中使用循环。我们可以使用 for 和 while 语句来创建循环。

发布时间:2023/03/20 浏览次数:141 分类:postgresql

本文介绍如何在 postgresql 中仅使用单个查询来重命名列以及更改其类型。

发布时间:2023/03/20 浏览次数:233 分类:postgresql

本文介绍如何在 postgresql 中使用 select 方法连接列。

发布时间:2023/03/20 浏览次数:281 分类:postgresql

本文展示了如何使用 case 语句并给出了 postgresql 中的示例。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便
网站地图