如何使用node-postgres设置模式

2024-01-10

我正在尝试查询名为的模式DOCUMENT在我的 postgres 数据库中使用节点 postgres https://www.npmjs.com/package/pg.

我似乎无法针对指定架构运行查询。

该查询使用 psql 直接针对 postgres 运行良好

SELECT * FROM "DOCUMENT".document_metadata m 
LEFT OUTER JOIN "DOCUMENT".document_attributes a 
ON a.document_id = m.id

此代码产生以下错误

const query = `SELECT * FROM "DOCUMENT".document_metadata m 
               LEFT OUTER JOIN "DOCUMENT".document_attributes a 
               ON a.document_id = m.id`
const metadata = await db.query(query)

Error

error: relation "DOCUMENT.document_metadata" does not exist
    at Connection.parseE (/usr/src/app/node_modules/pg/lib/connection.js:602:11)
    at Connection.parseMessage (/usr/src/app/node_modules/pg/lib/connection.js:399:19)
    at Socket.<anonymous> (/usr/src/app/node_modules/pg/lib/connection.js:121:22)
    at Socket.emit (events.js:189:13)
    at addChunk (_stream_readable.js:284:12)
    at readableAddChunk (_stream_readable.js:265:11)
    at Socket.Readable.push (_stream_readable.js:220:10)
    at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)

我也尝试过这个

const query = `SET search_path TO 'DOCUMENT';
               SELECT * FROM document_metadata m 
               LEFT OUTER JOIN document_attributes a 
               ON a.document_id = m.id;`

const metadata = await db.query(query)

这会产生错误

error: relation "document_metadata" does not exist
    at Connection.parseE (/usr/src/app/node_modules/pg/lib/connection.js:602:11)
    at Connection.parseMessage (/usr/src/app/node_modules/pg/lib/connection.js:399:19)
    at Socket.<anonymous> (/usr/src/app/node_modules/pg/lib/connection.js:121:22)
    at Socket.emit (events.js:189:13)
    at addChunk (_stream_readable.js:284:12)
    at readableAddChunk (_stream_readable.js:265:11)
    at Socket.Readable.push (_stream_readable.js:220:10)
    at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)

Update当我直接在 psql 中运行这些相同的查询时,我看到大约 10 行带有表名。当我通过节点代码运行此命令时,我没有看到任何行:

const metadata4 = await db.query('SHOW search_path;')
console.log('search_path after setting = ', metadata4.rows) // prints [ { search_path: '"DOCUMENT"' } ]

const tables = await db.query(`SELECT * FROM information_schema.tables where table_schema = 'DOCUMENT';`)
console.log('tables = ', tables.rows) // prints []

只需在单独的行中执行:

db.query("SET search_path TO 'DOCUMENT';")

DOCUMENT 是你的 schema 的名称,然后执行普通查询:

const query = `SELECT * FROM document_metadata m 
               LEFT OUTER JOIN document_attributes a 
               ON a.document_id = m.id;`

db.query(query)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用node-postgres设置模式 的相关文章

  • 如何使用react-native-router-flux在模态中进行导航

    我需要在我的反应本机应用程序中的模式中进行导航 使用新版本的react native router flux 似乎不可能做到这一点 我可以创建一个垂直动画来显示下一个场景 这与场景顶部的模态不同
  • 使用 ReactJS 突出显示文本

    我试图突出显示与查询匹配的文本 但我不知道如何让标签显示为 HTML 而不是文本 var Component React createClass highlightQuery function name query var regex ne
  • 关联数组不按顺序排列

    关联数组的顺序是这样的 A00 gt value1 A01 gt value2 B01 gt value3 B02 gt value4 但是在 for 循环之后数组顺序不起作用 for var key in obj3 code list1
  • jquery如何获取右、左、上、下箭头键值

    我使用了下面的代码 每当单击箭头键 左 右 上 下 时 我得到的键值为 0 任何人都可以帮忙解决这个问题吗 document keypress function e alert key value e which 如何获取 上 下 右 左
  • 在 PostgreSQL 的表中添加缺失的日期

    我有一个表 其中包含 2002 年每一天的数据 但其中缺少一些日期 即 2002 年有 354 条记录 而不是 365 条 对于我的计算 我需要在表中包含空值的缺失数据 ID rainfall date 100 110 2 2002 05
  • 如何向 DOM 添加支持 Angular 的元素?

    我想以编程方式添加一些支持 Angular 的 DOM 元素 实际上 我可能需要添加自定义组件 我该怎么做 这是一个简单的小提琴来演示这个问题 http jsfiddle net ZJSz4 2 http jsfiddle net ZJSz
  • mime.lookup 的 webrtc 错误

    我在我的电脑上尝试了 webrtc 演示 但在演示步骤 04 中 当我使用 npm install 和 node index js 时 它显示 类型错误 mime lookup 不是一个函数 即使我通过输入 npm install mime
  • jQuery:当使用 on .scroll 事件和警报时,firefox 似乎无限循环

    我的主模板之一中有以下 jQuery 代码 document scroll function var scroll top document scrollTop alert scroll top if scroll top lt 70 fi
  • 如何在 Postgres 中将表从公共模式移动到其他模式

    Postgres 9 1 数据库包含公共模式中的表 yksus1 ykssu9 pgAdmin 显示了这些定义 如下面的代码所示 如何将这些表移至 Firma1 架构 Firma1 模式中的其他表具有对这些表主键的外键引用 对这些表的外键引
  • IE9:奇怪的 JavaScript 错误

    我尝试在网站中显示 Google DFP 广告横幅时遇到错误 这些广告在除 IE9 之外的所有浏览器中展示 您可以在此处查看带有横幅的简单测试页面 离线演示 错误是 抛出异常但未捕获 google ads js 第 34 行字符 474 I
  • AngularJS:如何缓存从 $http 调用返回的 json 数据?

    如何缓存从 http 调用返回的 json 数据 我使用以下风格的 http 调用 http url SomeWebMethodUrl method POST data query somevalue headers Content Typ
  • 创建一个通用函数以将其用于其他数据

    我正在制作一个项目列表 并希望随着数量变化计算其值 但如何使该函数通用以便我可以将它用于所有行 你能建议一些最好和简单的方法 但请记住我想这样做仅限 JavaScript table thead tr th Name th th Quant
  • node-cron 每 3 小时运行一次作业

    我试图每 3 小时运行一次 node cron 作业 但我不确定我做得是否正确 现在我正在使用 8 它是否正确 您应该将秒和分钟值清零 并使用 3 的步长 其 cron 表达式是 0 0 3 其计算结果为 每 3 小时 0 秒 0 分钟 你
  • 如何将多种语言设置放入单个 .clang-format 文件中

    我想为 java javascript 和 c 创建一个 clang 格式 我知道如何转储单一语言的示例配置 但不知道如何合并这 3 个配置文件 有关如何将多种语言配置放入单个文件中的示例 BasedOnStyle LLVM IndentW
  • 如何根据父网格的标题复选框选择/取消选择所有子复选框

    我正在开发一个 Web 应用程序 其中包含嵌套在另一个数据网格中的数据网格 在父网格中 我在标题模板中有一个复选框 在子网格中的项目模板中有另一个复选框 功能是 1 如果我单击父复选框 则应检查子网格中的所有项目 反之亦然 2 我的子网格中
  • Select2 触发器(“更改”)创建无限循环

    假设页面上有两个 select2 元素 都使用 onChange 为了以编程方式在一个 select2 元素中设置一个值 您可以使用 id1 val xyz trigger change 如果您在这两个元素之一中进行选择时想要将另一个元素重
  • Mapbox 关闭除一层之外的所有图层

    我是 Mapbox 和 javascript 的新手 我试图稍微修改一下 Mapbox GL 代码示例 发现here https www mapbox com mapbox gl js example toggle layers 允许打开
  • 函数声明可以出现在 JavaScript 的语句内部吗?

    请考虑将官方 ECMAScript 规范作为您答案的来源 而不是特定浏览器供应商发布的文档 我知道 Mozilla 用 函数语句 扩展了它的 JavaScript 实现 因此 根据 ECMAScript 规范 因此 其中定义的语法产生式 这
  • jquery ui 自动完成添加跨度

    我在 div 上使用 jQuery 自动完成 但我得到了 jquery 自动添加的额外范围 span class ui helper hidden accessible search test span 如何防止创建此跨度 我通过添加 CS
  • JSON 数据的动态表单(不同类型)

    我尝试使用 JSON 中的数据在 AngularJS 中创建动态表单 我有这个工作 HTML p p

随机推荐

  • 在内联 GNU 汇编器中获取字符串长度

    我正在重新学习我在非常旧的 MS DOS 机器上使用的汇编程序 这是我对该函数应该是什么样子的理解 它编译但崩溃了SIGSEGV当试图把0xffffffff in ecx 该代码在具有 32 位 Debian 9 的 VM 中运行 如有任何
  • Matlab:二维数组,行不同长度

    在Matlab中 我想创建一个二维数组 但是 我无法创建矩阵 因为行的长度都不同 我是 Matlab 新手 我通常会在 C 中通过创建一个指针数组来完成此操作 每个指针都指向其自己的数组 我应该如何在Matlab中做到这一点 谢谢 您可以使
  • 上传和图像压缩

    我在客户的一个网站上使用 Uploadify 允许他们一次将大量图片上传到他们的照片库 我最近发现了一些问题 他们似乎上传大照片 3 MB 及以上 我想知道 是否可以在客户端压缩 减小它们的大小 而不是在服务器上进行压缩 就像 facebo
  • 从 Excel VBA 访问 Lotus Notes 数据库 - 如何选择 COLUMNVALUES?

    我正在研究将 Notes 数据库中的数据直接提取到 Excel 中 因为我们的财务人员正在手动重新输入数字 到目前为止 这是我的代码 子注释BB Const DATABASE 1247 Dim r As Integer Dim i As I
  • 如何从 Android 模拟器对 kik 的服务器 API 进行逆向工程?

    我有一个群聊基克信使 http kik com 会员数量已超过50人 我需要自动化一些事情 例如基于参与度的声誉点 以及踢掉 XXX 天没有发布任何内容的不活跃会员 我看过API参考 https dev kik com docs messa
  • 为什么 Google Chrome 模拟器以 375x667 分辨率显示 iPhone 6?

    我正在尝试以编程方式调整我的网站的图像大小以适应不同大小的设备 但现在我很难判断我真正需要的尺寸 在 Google Chrome 模拟器中 我看到一些图像放大了 例如在 iPhone 6 上从 230x230 自然显示到 357x357 该
  • 在每个像素的基础上快速比较两个位图对象

    我目前正在实现一种接受两个位图对象的方法 我们可以假设所述对象具有相同的尺寸等 该方法的返回是像素变化的列表 这存储在自制对象中 这是以迭代方式开发的 因此当前的实现是一个基本的实现 只需处理每个像素并将其与对应的像素进行比较 这种生成更改
  • Makefile 和“重定位具有无效的符号索引”错误

    我正在尝试编写我的第一个 makefile 在我的项目中 我有这些文件 main c list c list h Makefile 其中甚至没有函数定义或声明 只是简单的include list h 并 clean main 来测试编译过程
  • 鼠标悬停时播放 vimeo 视频

    我在一个页面中有四个 vimeo iframe 我想在鼠标悬停时播放视频并在鼠标移开时暂停视频 以下代码有效 但仅适用于最后一个视频 我该如何修改它才能适用于所有视频 wrapper width 85 margin left auto ma
  • 如何使 cpack 不向 RPM 添加所需的库?

    我正在尝试将工作中的构建系统转换为 cmake 但它生成的 RPM 通过 cpack 遇到了一个有趣的问题 它会自动将它认为您的 RPM 具有的所有依赖项添加到其所需的列表中图书馆 总的来说 这很好 但对我来说 这是灾难性的 不幸的是 我们
  • 在 Javascript 和 AngularJS 中解析 CSV

    因此 我尝试创建一个基本的角度应用程序来解析一些 CSV 输入 并用解析的数据填充表格 你可以在这里看到我想要实现的目标 http plnkr co edit 6QFT4AcV4KpiSG23EdOS http plnkr co edit
  • 辅助功能:使用 aria-live 的页面加载器指示器

    Issue 我有一个正在努力解决的可访问性问题 我有一个有角度的网络应用程序 加载内容时会显示页面加载旋转器 指示器 当页面内容加载后 微调器将被隐藏 这个 div 永远不会从 DOM 中删除 当显示加载 div 时 不会读取加载 div
  • 是否可以在 Xcode 中打开 SpriteKit 的现场调试绘图?

    是否可以在 Xcode 中打开 SpriteKit 的现场调试绘图 我的意思是像下面的图片 来自 WWDC 2014 会议 608 将以下内容添加到您的视图控制器中 Swift skView showsFields true ObjC sk
  • 如何用值 X 替换子字符串 [ ]

    我在 Java 中有如下字符串 String Value You are my star dear 我只想更换 有价值X 下面尝试过 什么都没起作用 ReplaceAll X ReplaceAll X ReplaceAll X 替换方法有3
  • Fortran 错误 5082

    我对 Fortran 很陌生 我正在尝试编译这个 Fortran 我认为是 90 代码 我正在使用带有英特尔编译器的 Visual Studio 下面的代码给我一个错误 5082 我完全不知道为什么 就像字面上没有任何线索 拜托 请帮忙 i
  • 比 supertrait 具有更严格关联类型界限的特征

    我有一个简单的特征 其关联类型没有限制 trait Board type Move fn moves self gt Vec
  • 如何开启icc/icpc警告?

    我在Linux上安装了英特尔编译器composer xe 2013 sp1 3 174 我对国际刑事法院的警告感到困惑 使用简单的程序 main c 馈送 icc 如下所示 int main int argc char argv int a
  • 预计声明结束

    好的 我使用了一个建议运行良好的公式 应该没有问题 但现在我收到此错误 预计声明结束 这是公式 Range B4 FormulaR1C1 IF RC 1 T VLOOKUP RC 7 treatlookup 11 FALSE VLOOKUP
  • 使用 word2vec 的二元组向量表示

    我想使用 word2vec 工具构建文档的词嵌入 我知道如何找到与单个单词 一元组 相对应的向量嵌入 现在 我想找到二元组的向量 是否可以使用 word2vec 构建二元词嵌入 如果是 怎么办 以下代码片段将为您提供二元组的向量表示 请注意
  • 如何使用node-postgres设置模式

    我正在尝试查询名为的模式DOCUMENT在我的 postgres 数据库中使用节点 postgres https www npmjs com package pg 我似乎无法针对指定架构运行查询 该查询使用 psql 直接针对 postgr