为什么.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)