相关疑难解决方法(0)

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

为什么.NET无法通过已安装的{NetezzaSQL}驱动程序连接到我的Netezza盒?64位应用程序也无法通过此ODBC连接进行连接.那为什么会这样?我在控制面板中构建了用户和系统Netezza ODBC连接,当我单击"测试连接"时两者都正常工作?我在注册表中看到了值,但是当我遍历注册表驱动程序时,.NET没有看到"NetezzaSQL".根据Netezza的说法,他们没有64位ODBC驱动程序.他们提供的驱动程序应该适用于32位和64位应用程序.这可能是Windows 7的权限问题吗?

static void CreateNetezzaTableObjectFolders()
{
    //string activeDir = @"C:\Source\EDW\dw-objects\trunk";

    OdbcConnection conn = new OdbcConnection();
    conn.ConnectionString = "Driver={NetezzaSQL};servername=10.1.170.18;port=5480;database=DEV_SANDBOX; username=mac;password=secret;";

    OdbcDataReader rdr = null;

    try
    {
        conn.Open();
        System.Data.Odbc.OdbcCommand cmd = new System.Data.Odbc.OdbcCommand("SELECT OBJECT_NAME FROM QA_ETL..STG_OBJECTS", conn);
        rdr = cmd.ExecuteReader();
        while (rdr.Read())
        {
            Console.WriteLine(rdr[0]);
            // Create Folder
            //string objectName = rdr[0].ToString();
            //string newPath = System.IO.Path.Combine(activeDir, objectName);
            //System.IO.Directory.CreateDirectory(newPath);
        }
    }
    finally
    {
        // close the reader
        if (rdr != null)
        {
            rdr.Close();
        }

        // close the connection
        if (conn != null)
        { …
Run Code Online (Sandbox Code Playgroud)

.net registry 64-bit odbc netezza

1
推荐指数
1
解决办法
5187
查看次数

标签 统计

.net ×1

64-bit ×1

netezza ×1

odbc ×1

registry ×1