ORA-01019从Excel连接到Oracle

ORA-01019从Excel连接到Oracle,oracle,excel,oracle10g,vba,Oracle,Excel,Oracle10g,Vba,我已安装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 strConne

我已安装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
提前感谢

“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
“关闭连接端”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
'关闭连接端

(这不适合注释框)

你至少需要一个司机。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"
我希望这能奏效

(这不适合放在评论框中)

你至少需要一个司机。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"

我希望这能奏效

我们也遇到了同样的问题,特别是在Windows7上使用VB6中的MicrosoftOLEDB驱动程序时。 按照本帖中的说明解决问题:

我们也遇到了同样的问题,特别是在Windows 7上使用VB6中的Microsoft OleDb驱动程序时。 按照本帖中的说明解决问题:

我最近遇到了以下错误。

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)
我通过简单地修改连接字符串来解决这个问题

发件人:

致:


有人修改/更新了盒子上的组件

最近发生了以下错误。

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)
我通过简单地修改连接字符串来解决这个问题

发件人:

致:



有人修改/更新了盒子上的组件

我也遇到了这个问题,但它在win10上。。在我尝试了很多不同的网络解决方案之后。。最后更改连接字符串以解决此问题很有效。。但是我将
“Provider=MSDAORA.1”
更改为
“Provider=OraOLEDB.Oracle”
我也有这个问题,但它在win10上。。在我尝试了很多不同的网络解决方案之后。。最后更改连接字符串以解决此问题很有效。。但我将
“Provider=MSDAORA.1”
更改为
“Provider=OraOLEDB.Oracle”

ORA-01019的意思是“无法在用户端分配内存”。首先,重新格式化问题文本-将文本移出[code]块,修复缩进。您是否尝试过从SQL*Plus连接到数据库?Apex接口运行正常吗?在Q中,您说您正在检索文本。你是说从Excel中检索吗?因为关于DB,我只看到插入检查这里的注释:ORA-01019表示“无法在用户端分配内存”。首先,重新格式化问题文本-将文本移出[code]块,修复缩进。您是否尝试过从SQL*Plus连接到数据库?Apex接口运行正常吗?在Q中,您说您正在检索文本。你是说从Excel中检索吗?因为关于DB,我只看到了插入检查这里的评论:如何增加进程堆的大小或切换到旧的调用集我一直在尝试用谷歌搜索,但我真的找不到一个具体的答案我希望这有点帮助,但我找不到如何做。实际上,我从excel连接的是一个问题,这不是问题。我试着为你寻找一个有效的例子。也许你应该试试这个。(查看帖子中的代码)如何增加进程堆的大小或切换到旧的调用集我一直在尝试用谷歌搜索这一点,但我真的找不到具体的答案我希望这有点帮助,但我找不到如何做。实际上,我从excel连接的是一个问题,这不是问题。我试着为你寻找一个有效的例子。也许你应该试试这个。(查看帖子中的代码)谢谢Sjuul Janssen我会试试这个然后回复你Hanks Sjuul Janssen我会试试这个然后回复你