Bonjour,
But du Jeu :
via un lien ODBC "Test", exécuter une procédure stockée SQL Serveur, ou une requête Access (a terme n'importe quelle Bdd).
Soucis :
Cela fonctionnait avec ADO, là cela plante avec ADO .net et Access. Fonctionne avec SQl Serveur.
Le code :
Une Bdd Access Test.mdb, une Table "Table", 2 ou 3 champs mais surtout un ID Clé primaire, une requête "sp_Procedure"
Idem sous SQl Serveur
L'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Public Function LireProc() As DataSet Dim strChaineConnect As String = "DSN=Test; User Id=; Password=;" Dim conDSN As New Odbc.OdbcConnection(strChaineConnect) Dim cmdODBC As New Odbc.OdbcCommand("sp_Procedure") cmdODBC.CommandType = CommandType.StoredProcedure Dim adaptateurODBC As New Odbc.OdbcDataAdapter(cmdODBC.CommandText, conDSN) Dim datasetODBC As New DataSet adaptateurODBC.Fill(datasetODBC , "Table") ''C'est ici que cela plante avec Access Return datasetODBC datasetODBC = Nothing adaptateurODBC = Nothing commandeODBC = Nothing End Function
Remarque :ERROR [42000] [Microsoft][Pilote ODBC Microsoft Access] Instruction SQL non valide; 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT' ou 'UPDATE' attendus.
Cela focntionne très bien si l'on remplace la procédure stockée par la requête "Select * From Table" par exemple.
Partager