我需要从oracle视图中恢复数据,该视图具有定义为clob数据类型的列,因为该字段中可能存在超过4000个字符 .
我在Excel VB中有Sub Routine执行查询并将结果放入单元格范围但是当我尝试执行查询时遇到“数据类型不支持”的问题 .
甚至可以在Excel中查询Clob数据类型列?
我找不到任何可以表明我哪里出错的信息 .
我在这里先向您的帮助表示感谢 .
Sub Get_Data4()
Dim cn As Object
Dim rs As Object
Dim strCon As String
Dim strSQL As String
Dim strUsername As String
Dim strPassword As String
Dim strInput As String
'strUsername = InputBox("Input User Name")
'strPassword = InputBox("Input Password")
strCon = "Provider=MSDAORA;Data Source=xxx;User ID=xxx;Password=xxx;"
Set cn = CreateObject("ADODB.Connection")
cn.Open strCon
strSQL = "Select clob_field from Table1"
Set rs = CreateObject("ADODB.RECORDSET")
rs.ActiveConnection = cn
rs.Open strSQL
Sheet1.Range("A4").CopyFromRecordset rs
rs.Close
cn.Close
Call Get_Data
End Sub
1 回答
我也面临同样的问题 . 尝试打开记录集时,我收到“未指定的错误” . 我发现使用Oracle Home驱动程序可以解决此问题 .
请按照以下步骤在您的计算机中配置Oracle Home Driver -
安装Oracle Instant Client 12C
找到这条路径 -
C:\Oracle\product\12.1.0\client\Network\Admin\Sample
复制"sqlnet.ora"和"tnsnames.ora"文件
粘贴在Admin文件夹中(如上面的路径所述)
编辑"tnsnames.ora"文件
在最后添加以下代码
保存文件
检查ODBC驱动程序中的驱动程序名称(
Control Panel -> Administrative Panel -> Data Sources (ODBC)
)我的驱动程序名称显示为 - OraClient12Home1中的Oracle尝试以下连接字符串