【问题标题】:How to use Excel Power Query to access a postgresql database如何使用 Excel Power Query 访问 postgresql 数据库
【发布时间】:2013-12-22 12:43:54
【问题描述】:

我们有一个 postgresql 9.0 数据库,我们希望通过运行 Power Query 插件的 Excel 2010 连接到该数据库。我已经设置了运行 excel 的机器,以便能够根据这些说明http://office.microsoft.com/en-us/excel-help/connect-to-a-postgresql-database-HA104028095.aspx?CTT=5&origin=HA104003952 使用 Npgsql 进行连接。 Excel 中的连接失败并显示以下错误消息:

DataSource.Error: PostgreSQL: 错误: 42883: 函数 concat(information_schema.character_data, unknown) 不存在 详细信息:Message=ERROR: 42883:..., ErrorCode=-2147467259

是否有人使用 Power Query 插件从 Excel 成功连接到 postgresql 数据库? excel 中的电源查询功能区上有一个专门用于 postgresql 的菜单项,所以我认为它可以工作。 concat 函数不在我们的 postgresql 9.0 版本中,所以我必须升级我们的 postgresql 数据库才能执行此操作吗?

【问题讨论】:

  • 看来你需要升级了-concat()出现在9.1
  • 是的,我猜。我正在研究 pg_upgrade。我想知道为什么excel要使用该功能来简单地连接到数据库。
  • 由于错误中提到了“information_schema”,它可能会检索一些元数据(例如,各种现有数据库对象的列表)。
  • 一种解决方法是可能的 - 请参阅here
  • 添加功能 Milen 然后我可以连接。谢谢。

标签: excel postgresql


【解决方案1】:

您可以像这样升级或定义自己的函数:

CREATE OR REPLACE concat(information_schema.character_data, varchar) 
RETURNS varchar LANGUAGE SQL AS
$$ SELECT $1::varchar || $2; $$;

但升级到 9.1 似乎是最好的方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-04
    • 1970-01-01
    • 2019-08-09
    • 2022-06-21
    • 2016-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多