我遇到了来自 Redshift 的 OIDS 的 ODBC 问题
我必须使用 ODBC 连接在 excel 中构建动态报告,它说找不到 Oid 列。
我在等着看 DBA 是否可以更改默认设置,但是每个用于禁用 OIDS 的 PostgreSQL 命令在 Redshift 中都不起作用。建议?请不要对 Excel 作为报告工具发表评论,这就是我目前的全部内容。
我试过以下方法都无济于事:
CREATE TABLE (
...
) WITHOUT OIDS;
CREATE TABLE (
...
) WITH ( OIDS = FALSE );
alter table [tablename] SET WITHOUT OIDS;
最佳答案
我们遇到了完全相同的问题,我们通过更改 Excel 设置与 AWS Redshift 的连接的方式来修复它。我们没有创建连接 From Microsoft Query
,而是 From Data Connection Wizard
:
顺便说一句,这允许您查看连接字符串(默认情况下包括 FAKEOIDINDEX=0;SHOWOIDCOLUMN=0
)。
PS:更多信息o n what are OID and why Excel (Microsoft Query) 使用 OIDS 来处理行(它是唯一行 ID 之王)。但是,如果您编写自己的 SQL 请求,Excel 应该不会用 OIDS 惹恼您。
希望对您有所帮助..
关于excel - 在 AWS Redshift 中禁用 OID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26762236/