Bonjour,

Je travaille actuellement sur une application web PHP - SQL Server.
J'utilise le driver sqlsrv (sqlsrv_connect, sqlsrv_query...) pour faire mes requetes sur ma base de données.

Mon problème est le suivant : je me retrouve dans l'obligation de faire un INSERT sur un champs ayant un "Identity Specification".
J'ai essayé en ajoutant l'instruction "SET IDENTITY_INSERT tableName ON" avant ma requête, mais il semblerait que cela ne fonctionne pas avec sqlsrv_query.

Voici un exemple de code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
$sql = "
	SET IDENTITY_INSERT table_test ON
	INSERT INTO table_test (id, test)	-- Le champs id est en Identity Specification
	VALUES (42, 'test')
	SET IDENTITY_INSERT table_test OFF
";
 
sqlsrv_query($connexion, $sql);
J'ai essayé la même requête (au caractère près) en utilisant le driver mssql (mssql_connect, mssql_query...), ça marche, mais on m'impose l'utilisation de sqlsrv.

Quelqu'un aurait-il une solution?

Merci d'avance