Oracle Connectionstring,其密码包括分号

我正在使用VBA连接到oracle数据库。除非密码包含分号,否则一切工作正常且符合预期。 这是我连接数据库的方式:

Dim cn As ADODB.Connection
Dim strCon As String

Set cn = New ADODB.Connection

strCon = "Driver={Oracle in Oracleclient32_home1};Dbq=" & tnsname & ";" & _
          "Uid=" & user & "; Pwd=" & password & ";"

'Open the connection
cn.Open strCon

如果密码类似于“ pass; word”,则登录失败,提示密码错误。

我已经尝试过的东西:

-用大括号括起密码:

Pwd={" & password & "};" 这返回错误的字符串或缓冲区长度作为错误。

-用双引号引起来:

Pwd=" & Chr(34) & password & Chr(34) & ";" 这也将无效的字符串或缓冲区长度重新设置为错误。

希望您能帮助我:-)

wxfjf200806 回答:Oracle Connectionstring,其密码包括分号

尝试这个:

strCon = "Driver={Oracle in OracleClient32_home1};Dbq=" & tnsName
cn.Open strCon,user,password 

或者使用OdbcConnectionStringBuilder(语法可能是错误的)

Dim strCon As New OdbcConnectionStringBuilder
strCon.Driver = "Oracle in OracleClient32_home1"

strCon.Add("Dbq",tnsName)
strCon.Add("Uid",user)
strCon.Add("Pwd",password)

cn.Open strCon.ToString()

DbConnectionStringBuilder可能是另一种选择

本文链接:https://www.f2er.com/3109169.html

大家都在问