已通过链接服务器连接到SYBASE,操作无问题。
但是,在用到事务时,比如
BEGIN TRANSACTION
update HIS.FL_TL_HIS.dbo.tphy_jcxmdm set lisbz='1'
commit
提示以下错误信息:
服务器: 消息 7399,级别 16,状态 1,行 2
OLE DB 提供程序 'Sybase.ASEOLEDBProvider' 报错。提供程序未给出有关错误的任何信息。
OLE DB 错误跟踪[OLE/DB Provider 'Sybase.ASEOLEDBProvider' ITransactionJoin::JoinTransaction returned 0x80004005: 提供程序未给出有关错误的任何信息。]。如果不使用事务就没问题,但是触发器中有隐式事务。多谢各位帮忙。
但是,在用到事务时,比如
BEGIN TRANSACTION
update HIS.FL_TL_HIS.dbo.tphy_jcxmdm set lisbz='1'
commit
提示以下错误信息:
服务器: 消息 7399,级别 16,状态 1,行 2
OLE DB 提供程序 'Sybase.ASEOLEDBProvider' 报错。提供程序未给出有关错误的任何信息。
OLE DB 错误跟踪[OLE/DB Provider 'Sybase.ASEOLEDBProvider' ITransactionJoin::JoinTransaction returned 0x80004005: 提供程序未给出有关错误的任何信息。]。如果不使用事务就没问题,但是触发器中有隐式事务。多谢各位帮忙。
除非你知道SYBASE里是怎么使用事务的,并且将事务操作及回滚放到SYBASE里,并将事务运行的结果反馈到MSSQL,否则恐怕不行.
如果实时性要求不高,可以触发器写入到一个表,再增加个作业读取这个表,更新到Sybase,然后删除这个表的数据,可以定义作业没几分钟执行一次来扫描,具体时间看实时性要求。
可出来的结果都是一样的,几乎都是一个模板。
SYBASE网站也去了。
照着一步步设置,就是连接不过去。