三层中事务的问题

Richa 2003-09-16 11:05:36
MTS/COM+和ORACLE的连接,在事务方面不是很完善,这个问题我在以前的论坛中已经看到过了,但是,在实际的操作过程中间,我还是遇到了一些问题:
服务器端的组件为"需要事务",怎么客户端不管使用什么连接方式都连接不上(当时提供的解决办法是安装MDAC,我已经安装了,但是中间是英文说明,兄弟英文水平太差,看不懂:(),请问各位大虾能否帮助解决这个问题,小弟感激万分
...全文
33 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
ytwxw 2003-09-24
  • 打赏
  • 举报
回复
我以前试过oracle跟COm+的结合
用的是oracle8i
我记得客户端我是用的socket
而服务器段之间组件的连接使用dcom
oracle驱动一定要使用微软提供的阿ADO for Oracle驱动
然后再com+管理器中要设定启用oracle的那个什么XA
事务管理(记不清了,很久以前测试过,现在已经放弃了,微软跟oracle 没得搞,特别是ADO)
当然还要修改注册表了至于怎么修改在我以前的文章中有人提过,你自己查吧
主要是要把默认的那几个驱动改的根你所用的oracle版本一致
Richa 2003-09-23
  • 打赏
  • 举报
回复
蛇眼兄,如果你说调用存储过程的话,那不有太大的编码开销了。你还得想办法把客户端的需要更新的数据以数组形式传到服务器端,并且还要在服务器端进行封装。虽然也有大虾这么说过,但是对于一个复杂的用户界面,想调用存储过程是很困难的了!
据说可以使用数据字段之类的东西,但是小弟到现在也没有遇到过一个现成的例子,除了在JAVA中遇到
snake_eye 2003-09-19
  • 打赏
  • 举报
回复
更正这句话:
我们现在搞的COM+有点类视java里的数据库连接池PoolManager ,Connection Pool!
snake_eye 2003-09-19
  • 打赏
  • 举报
回复
那套构件主要用他的类试ADOQuery,provide,connection的三个东西。其他的没用,发布的时候当然是发布OCM+组建了。
我们现在搞的COM+有点java里的数据库连接池,ManagerPool,Commection Pool
中间层是第一个需要,(需要新事务)开启的,当然用代码可以自行控制事物,但是这样不太好吧,setcomplete,setabort.
如果你的项目没有开始的话,强烈建议用存储过程,现在我们的事物方面也是搞的很不顺
oracle和微软就是搞不好。
zousoft 2003-09-19
  • 打赏
  • 举报
回复
except
raise;
SetAbort;
end;

raise是不是应该放在SetAbort后面?
Richa 2003-09-18
  • 打赏
  • 举报
回复
蛇眼兄,如果用这组控件开发产品的话,那要在发布的时候附带点什么东西呢??
还有,是利用什么方法来开启事务呢?
这个方法怎么样
procedure TSM.MA(var Data1, Data2: OleVariant);
var
i : integer;
begin
if ObjectContext.IsInTransaction then ShowMessage('INtransaction');
try
DataSetProvider1.ApplyUpdates(Data1,0,i);
DataSetProvider2.ApplyUpdates(Data2,0,i);
SetComplete;
except
raise;
SetAbort;
end;
end;
Richa 2003-09-18
  • 打赏
  • 举报
回复
谢谢蛇眼兄关心,小弟正在尝试下载使用。
xsm7702 2003-09-18
  • 打赏
  • 举报
回复
不好意思,这个问题我也不是很清楚啊.
Richa 2003-09-17
  • 打赏
  • 举报
回复
谢谢青苹果兄的热心,小弟已经非常感激了
eastliangliang 2003-09-17
  • 打赏
  • 举报
回复
没试过用COM+连ORACLE,先mark,回头我试试。
snake_eye 2003-09-17
  • 打赏
  • 举报
回复
COM+和ORACLE的。出现很多怪问题,比如负数提交后成了正数,
事务方面更是违反常理,负责查询的COM+有的时候在一个事务链中
也的搞的需要事务。楼主可以用DAO构件包专门处理oracle的,代替ADO
这套构件在delphi窑洞里有,很不错,处理blob字段上也很好!
S海鸥 2003-09-17
  • 打赏
  • 举报
回复
对不起没有用过事务.
eastliangliang 2003-09-17
  • 打赏
  • 举报
回复
试了一下,连数据库果然有问题,TMD微软和ORACLE是不是有仇啊。
顶给猛禽看,我看见他啦。快出来看看。
Richa 2003-09-16
  • 打赏
  • 举报
回复
怎么了,大虾都跑哪里去了?
rwdx 2003-09-16
  • 打赏
  • 举报
回复
没试过oracle
rwdx 2003-09-16
  • 打赏
  • 举报
回复
gz
Richa 2003-09-16
  • 打赏
  • 举报
回复
对了,忘记告诉大家错误的类型了:客户端使用DCOM进行连接,当connected属性设为True时,报告灾难性故障,堆栈溢出错误
Richa 2003-09-16
  • 打赏
  • 举报
回复
各位大虾都跑哪里去了,刚才又看了以前的帖子,发现有人建议修改数据库服务器的注册表,修改哪里,怎么修改??

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧