我已经安装了Oracle 10g Express Edition。当尝试测试连接时,我收到错误“尝试检索错误ORA-01019的文本时出错”。
以下是我的代码。
strConnection = "Driver={Microsoft ODBC for
Oracle};Server=Servername;Uid=username;Pwd=password;"
Set conn = CreateObject("ADODB.Connection")
conn.Open strConnection
conn.Close
Set conn = Nothing
提前致谢
答案 0 :(得分:1)
我最近发生了以下错误。
System.Runtime.InteropServices.COMException (0x80004005): ORA-01019: unable to allocate memory in the user side
at ADODB.ConnectionClass.Open(String ConnectionString, String UserID, String Password, Int32 Options)
我设法通过简单地修改我的连接字符串来解决问题。
从:
"Provider=MSDAORA.1;Data Source=tprss;Persist Security Info=True;User ID=myUser;Password=myPassword"
要:
"Provider=MSDASQL;Data Source=tprss;Persist Security Info=True;User ID=myUser;Password=myPassword"
有人修改/更新了盒子上的组件。
答案 1 :(得分:0)
“ORA-01019无法在用户端分配内存
原因:用户端内存分配器返回错误。
操作:增加进程堆的大小或切换到旧的一组调用。“
评论后续跟进:
你可以尝试这段代码吗?
Dim Cn As ADODB.Connection
Dim CP As ADODB.Command
Dim Rs As ADODB.Recordset
Dim Conn As String
Dim QSQL As String
'Connect to Oracele server begin
Conn = "DRIVER={ORACLE ODBC DRIVER};SERVER=Service name;UID=username;PWD=password;DBQ=Service name;DBA=W;APA=T;FEN=T;QTO=T;FRC=10;FDL=10;LOB=T;RST=T;FRL=F;MTS=F;CSR=F;PFC=10;TLO=O;"
Set Cn = New ADODB.Connection
With Cn
.ConnectionString = Conn
.CursorLocation = adUseClient
.Open
End With
If Cn.State = adStateOpen Then
MsgBox "Connection successful."
End If
'Connect to Oracle server end
'close connection begin
Cn.Close
Set Cn = Nothing
Set CP = Nothing
'关闭连接结束
答案 2 :(得分:0)
(这不适用于评论框)
您至少需要一个驱动程序。 oracle驱动程序是最好的,但Microsoft驱动程序也可以工作。
让我们首先尝试创建一个连接字符串。右键单击桌面并创建一个新的.txt文件。 现在将文本文件重命名为something.udl 双击udl文件。转到“提供商”并选择Microsoft OLEDB Provider for Oracle。然后点击下一步。在服务器名称字段中,您可以填写TNS名称。然后输入用户名和密码并在“允许保存密码”中输入一个V(我们将需要这个)并单击测试连接。确保这有效。
如果有效,请单击“确定”。现在用文本编辑器打开UDL文件。你会看到类似的东西:
[oledb]
; Everything after this line is an OLE DB initstring
Provider=MSDAORA.1;Password=yourpw;User ID=youruser;Data Source=yourTNS;Persist Security Info=True
将此部分复制到您的连接字符串中:
Provider=MSDAORA.1;Password=yourpw;User ID=youruser;Data Source=yourTNS
现在您的连接字符串应如下所示:
Conn = "Provider=MSDAORA.1;Password=yourpw;User ID=youruser;Data Source=yourTNS"
我希望这有效。
答案 3 :(得分:0)
我们遇到了同样的问题,特别是在Windows 7上使用VB6的Microsoft OleDb驱动程序时。 按照这篇文章中的说明修复了问题: http://prasanth4microsoft.blogspot.com/2010/11/windows7-excel-vba-ora-01019-unable-to.html
答案 4 :(得分:-1)
我也有这个问题,但是它在win10上..在我尝试了很多不同的解决方案之后..最后..它改变了连接字符串以解决这个问题..但我改变了{{1} } "Provider=MSDAORA.1"