En faisant des requêtes entre 2 instances différentes de SQL Server via le Microsoft SQL Server Management Studio, je n’avais aucun problème mais quand j’ai voulu passer ma requête via une page PHP, je me suis pris ce joli message d’erreur :

Warning: mssql_query() [function.mssql-query]: message: Les requêtes hétérogènes requièrent les options ANSI_NULLS et ANSI_WARNINGS pour être définies pour la connexion. Cela assure la cohérence sémantique de la requête. Activez ces options et réexécutez la requête. (severity 16)

Pour résoudre cela, il suffit de passer les valeurs ANSI_NULLS et ANSI_WARNINGS à « ON » via la fonction mssqlquery, ce qui nous donne :

$msquery_test ="select...";
$msresult_test = mssql_query("SET ANSI_NULLS ON;");
$msresult_test = mssql_query("SET ANSI_WARNINGS ON;"); 
$msresult_test= mssql_query($msquery_test);

Ça pourra peut-être vous faire économiser de précieuses minutes 😉

Fermer