1000分求解!!决不食言!!!!开新贴付分。(200分)

  • 主题发起人 主题发起人 gfdelphi
  • 开始时间 开始时间
G

gfdelphi

Unregistered / Unconfirmed
GUEST, unregistred user!
在dephi中调用oracle中的存储过程,在存储过程中有dblink,报ora-02041错误,
存储过程如下:
CREATE OR REPLACE Procedure test
IS

BEGIN
insert into syszwyrf.barcode@gzrdc(barcode,scantime) values

('2008',to_date('2002-09-02','YYYY-MM-DD'));

commit;
END;
请大家帮忙!!!谢谢!!!!!
 
我在线等!!请帮忙。
 
查以下oracle的错误代码
ora-02041
看看什么原因?
 
對你要使用的表使用oracle同義詞,將dblink包在其內,由oracle內部解決
不要直接在pl/sql用dblink
在oem的管理工具裡的schema中用synonym選擇remote database建立dblink遠程表的
同義詞
我已實現好多遠程的oracle server通過internet互相這樣連接查詢和更新
你的問題我一定搞定
希望分也不少我的


 
我试试。一定给分
 
还有问题。我明天还来。有问题在向你请教。谢谢。
 
还有人能帮我吗?
 
高手在吗?
 
今天大家都上班了吧?帮帮我。
 
察看一下连接用户的权限,是否有执行所有存储过程的权限,如果有,在SQL PLUS中
试一下,看是否通过,如果你的oracle是8i以前的版本,好像DBLink的Name一定要和
相对应的数据库同名,否则连接不通,但在9i中就不必同名。
 
ORA-02041 client database did not begin a transaction

Cause: An update occurred at a coordinated database
without the coordinator beginning a distributed
transaction. This may happen if a stored procedure
commits and then performs updates, and the stored
procedure is invoked remotely. It could also happen
if an external transaction monitor violates the XA
protocol.

Action: If the cause is the former, check that any
commit is not followed by an update.

http://otn.oracle.com/docs/products/oracle8i/doc_library/817_doc/server.817/a76999/e1500.htm#1003914
 
请看我上面的例子,很简单的。
 
I solved with the driver "Microsoft ODBC for Oracle ver. 2.573.37112".

Reconfigure your DSN by choosing the "Disable MTS support " option.
[If you are unable to see the option, you need to upgrade to the latest ODBC driver and
choose the option 'Disable MTS support" for your DSN]
 
我用的是adoprocedure。
 
多人接受答案了。
 
后退
顶部