[SQLEXP2005] [TSQL] fonction OpenRowset
Bonjour,
Je souhaite utiliser OpenRowset, avec une chaine de connexion OleDB. Mais ... je n'y arrive pas.
Si je fais :
Code:
1 2 3 4
| SELECT * FROM OPENROWSET(
'sqloledb',
'MONSERVEUR';'sa';'pwd',
'SELECT * FROM MABASE.dbo.MATABLE' |
Ca marche, et je suis bien en OleDB, mais je n'utilise pas de chaine de connexion : je passe directement en paramètre le nom du serveur, le login, et je dois préfixer le nom de ma table pour indiquer la base que j'attaque.
Si je fais :
Code:
1 2 3 4 5
| SELECT * FROM OPENROWSET (
'MSDASQL',
'DRIVER=SQL Server;SERVER=MONSERVEUR;
UID=sa;PWD=pwd;DATABASE=MABASE',
'SELECT * FROM MATABLE') |
Ca marche aussi, j'utilise bien une chaine de connexion, je n'ai pas besoin de préfixer le nom de ma table (puisque la chaine de connexion contient déjà le nom de la base à attaquer), mais ... il s'agit d'une chaine de connexion ODBC, si je ne m'abuse.
Or moi, j'ai à ma disposition une chaine de connexion OleDB, du type :
Code:
1 2 3 4 5 6
| Provider=SQLOLEDB.1;
Persist Security Info=True;
User ID=sa;
Password=pwd;
Initial Catalog=MABASE;
Data Source=MONSERVEUR |
Je souhaiterais donc pouvoir faire une requête comme ceci :
Code:
1 2 3 4 5 6 7 8 9
| SELECT * FROM OPENROWSET(
'sqloledb',
'Provider=SQLOLEDB.1;
Password=pwd;
Persist Security Info=True;
User ID=sa;
Initial Catalog=MABASE;
Data Source=MONSERVEUR',
'SELECT * FROM MATABLE') |
Mais je me fais jeter, avec les messages suivants :
Code:
1 2 3 4 5 6
| OLE DB provider "SQLNCLI" for linked server "(null)" returned message "Invalid authorization specification".
OLE DB provider "SQLNCLI" for linked server "(null)" returned message "Invalid connection string attribute".
Msg 7399, Level 16, State 1, Line 12
The OLE DB provider "SQLNCLI" for linked server "(null)" reported an error. Authentication failed.
Msg 7303, Level 16, State 1, Line 12
Cannot initialize the data source object of OLE DB provider "SQLNCLI" for linked server "(null)". |
J'imagine que je m'y prends mal avec OpenRowset, mais là je sèche. Si quelqu'un peut m'éclairer, je suis preneur !
Merci ;)