【发布时间】:2015-04-07 09:18:02
【问题描述】:
我一直在尝试使用 vba 代码从 Excel 连接到 Teradata,但出现以下错误: 无法通过网络访问 Teradata Server。我已经能够从 Teradata SQL 助手成功连接,并且我还成功地 ping 了 Teradata 服务器(我在运行 VMware 播放器的笔记本电脑中使用 Teradata express 版本)。我还从 Excel 数据连接向导和 Microsoft 查询成功连接到 Teradata。我还关闭了防火墙并检查我是否能够连接但仍然无法连接。请让我知道我哪里出错了。
请查看以下代码:
Private Sub CommandButton1_Click()
Dim conn As ADODB.Connection
Dim rec1 As ADODB.Recordset
Dim thisSql As String
Set conn = New ADODB.Connection
conn.Open "Driver=Teradata;DBCName=dsnname;Databasename=dbname;Uid=Userid;Pwd=****;"
thisSql = "sel * from customer_db.customer"
Set rec1 = New ADODB.Recordset
rec1.Open thisSql, conn
With Sheet1.QueryTables.Add(Connection:=rec1, Destination:=Sheet2.Range("A1"))
.Name = "data"
.FieldNames = True
.Refresh BackgroundQuery:=False
End With
End Sub
【问题讨论】: