用Excel VBA导入导出Oracle数据
导入数据
安装Oracle Instant Client(Basic + ODBC)
下载链接: Oracle Instant Client Downloads
我本机是64位,但我选择了32位的版本(因为开始用64位时,用VBA老是报找不到Drivers,不清楚原因,可能因为我的Excel是32位,VBA总是查询32位的ODBC数据源),选择下载Instant Client的Basic Package版本以及对应的ODBC Package,我这里下载的版本号是19.6.0.0.0。
安装方法:把下载的两个zip文件都解压到同一目录上,然后运行“odbc_install.exe”(需管理员身份运行)
配置环境变量
配置环境变量:ORACLE_HOME = Oracle Instant Client的目录
配置数据源
配置ODBC数据源:新增一个DSN,选择Oracle in instantclinent_19_6,DSN名字自定义,可以填上数据库连接主机、用户名、密码(但这些都可以不填,VBA代码可以设置运行时再弹出提示框再填写),这个DSN的名字在VBA连接中需要用到,我这里取名为Oracle。
VBA代码示例
下面定义了一个Connection类,把Connection/Recordset打包一起,后续可以扩展。
' 创建一个Connection连接类,封装一些简单功能
' 保存为类模块:OracleConnection
Private con As New ADODB.Connection
Private cmd As New ADODB.command
Private rs As New ADODB.Recordset
Private