I have created a linked server between a Microsoft SQL Server 2000 and MariaDB Server 10.1.17.
For this I used the ODBC connector version 5.1 downloaded from the MySQL website.
The problem that arises is when doing distributed transactions, for example:
select * from mysql51...Candidato;
update Candidato set nombre_candidato='Oscar' where id_candidato=6;
update mysql51...Candidato set nombre_candidato='Oscar' where id_candidato=6;
set XACT_ABORT ON
BEGIN DISTRIBUTED TRANSACTION;
update Candidato set nombre_candidato='Juan' where id_candidato=6;
update mysql51...Candidato set nombre_candidato='Juan' where id_candidato=6;
ROLLBACK TRANSACTION;
GO
select * from Candidato;
When executing this block of code, the first 2 updates do it correctly, while the updates found in the BEGIN DISTRIBUTED TRANSACTION block show the following error:
OLE DB error trace [OLE/DB Provider 'MSDASQL' IUnknown::QueryInterface returned 0x80004002].
Msg 7390, Level 16, State 1, Line 7
The requested operation could not be performed because the OLE DB provider 'MSDASQL' does not support the required transaction interface.
In the properties of the MSDASQL provider, I have the following parameters configured:
Any suggestions?