Netezza 是不是具有 ODBC DESCRIBE 函数?

Posted

技术标签:

【中文标题】Netezza 是不是具有 ODBC DESCRIBE 函数?【英文标题】:Does Netezza have an ODBC DESCRIBE function?Netezza 是否具有 ODBC DESCRIBE 函数? 【发布时间】:2011-09-13 09:14:59 【问题描述】:

我想描述在 Netezza 上保存的一个表(这样可以查看变量格式、distribute on 子句等)。我知道这是可能的(本机)使用

\d <tablename>

但是我使用 SAS 进行连接(通过 ODBC)。

这可能使用 SAS 9.1.3 代码吗?

【问题讨论】:

【参考方案1】:

我对您的问题并不完全清楚,但我假设您想使用 nzsql 命令来描述该表。 如是, 然后试试这个 nzsql -c "\d 表名"

【讨论】:

已修改问题。我们只能使用 SAS 连接,因此无法使用 NZ 命令(据我所知)。【参考方案2】:

您需要访问保存有关表的信息的系统视图。您不能在一个查询中执行此操作,但您可以使用两个查询。

SELECT  attname "Attribute", 
        datatype "Type", 
        CASE WHEN attnotnull='t' THEN 
            'Not Null' 
        ELSE 
            'Null' 
        END "Modifier",
        coldefault "Default"
FROM _v_relation_column col_t
    cross join _v_datatype dat_t
WHERE dat_t.objid = col_t.atttypid
    AND name='<table_name>'
ORDER BY attnum
;

SELECT attname  "Distributed on hash"
FROM _v_table_dist_map
    INNER JOIN tb_nm t ON tname = tablename
WHERE tablename ='<table_name>'
;

【讨论】:

【参考方案3】:

我不了解 Netezza,但如果您可以使用 SAS/ACCESS 连接到它,那么您应该能够通过 SQL Pass-Through 使用 DBMS 特定命令。

文档here

【讨论】:

以上是关于Netezza 是不是具有 ODBC DESCRIBE 函数?的主要内容,如果未能解决你的问题,请参考以下文章

用于 linux 的 Netezza odbc 驱动程序下载失败

通过 ODBC 从 C# 读取 Netezza 数据库表在 Windows 7 中不起作用

Aginity for Netezza 使用 ODBC 从外部 xlsx 文件创建临时表

使用 ODBC 连接将 R Studio 连接到 IBM Netezza 数据库 [关闭]

是否可以在 Ubuntu 上使用 Netezza ODBC 驱动程序?

unixodbc 和 netezza ODBC 驱动程序问题(未定义符号:SSL_connect)