强制Excel从ODBC数据连接上的连接字符串中排除/删除UID?

问题描述

我有几个Excel报告,这些报告通过与其他用户共享的ODBC通过ODBC查询Oracle数据库。每个用户都有自己的用户ID和密码,这些用户ID和密码保存在其HKEY_LOCAL_MACHINE / SOFTWARE / ODBC / ODBC.INI文件中,以简化与这些数据库的连接。

每次我向Excel添加查询时,Excel都会自动创建一个连接字符串,每次需要在Excel中刷新数据时都可以执行该连接字符串。连接字符串的格式为:

DSN=DATABASE;UID=USERNAME;DBQ=DBASE;DBA=W;APA=T;EXC=F;FEN=T;QTO=T;FRC=10;FDL=10;LOB=T;RST=T;BTD=F;BNF=F;BAM=IfAllSuccessful;NUM=NLS;DPM=F;MTS=T;MDI=F;CSR=F;FWC=F;FBS=64000;TLO=O;MLD=0;ODA=F;”

我希望Excel从其构建的这些连接字符串中排除UID = USERNAME参数,以便它将从注册表中提取用户名。当前,它是针对密码值执行此操作,而不是用户名

如果我手动删除UID参数,则每次刷新查询时,Excel都会自动自动将其填充,并以用户最后一次刷新查询的方式填充它:

我尝试将用户名填写为UID = /,这似乎告诉Excel将用户名注册表中拉出,就像我希望它第一次运行一样;但是随后,弹出Oracle ODBC Driver Connect登录,以为用户名实际上是/:

因此看来Oracle还是无法一致地识别此参数。

基本上,我正在尝试确定是否存在可用于填写UID字段的通配符或其他类似的参数,以便Excel和Oracle ODBC Driver Connect对话框都知道可以拉出注册表中的用户名;或者是否有一种方法可以防止Excel在每次刷新连接时将UID参数添加到连接字符串。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)