Salut,

Je cherche à attaquer le service d'indexation Windows (Indexing Service) depuis une base Oracle.

Je l'ai déjà fait avec un serveur SQL Server, c'est tout simple : il suffit de créer, sur la base MSSQL, un serveur lié pointant sur Indexing Service, et l'on peut ensuite, depuis la base MSSQL, effectuer des requêtes du type :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT FileName
FROM openquery(MON_SERVEUR_LIE, 
                      'SELECT FileName 
                       FROM Scope() 
                       WHERE CONTAINS(Contents, "MonCritère*")'
)
Je cherche à faire la même chose depuis une base Oracle, et je galère pas mal (doux euphémisme).

Une solution que j'envisage est d'utiliser le Transparent Gateway MSSQL pour ensuite créer un DatabaseLink vers un serveur SQL Server servant de passerelle au service d'indexation. On aurait alors quelque chose du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Base SQL Oracle 
    = (via Transparent Gateway MSSQL + DatabaseLink) => 
        Base MSSQL 
            = (via serveur lié) => 
                Indexing Service
Seulement, je ne sais pas si c'est techniquement faisable (le Gateway MSSQL permet-il à une base Oracle d'accéder à un serveur lié à un serveur MSSQL ?), et c'est horriblement lourd.

D'où ma question : quelqu'un aurait-il une piste, une idée, un bout de solution ?
Question subsidiaire : existe-t-il un Transparent Gateway pour Indexing Service ? (on peut rêver...)

Merci d'avance !