VB .net, Odbc et Procédure Stockée
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
Code:
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 |
L'erreur :
Citation:
ERROR [42000] [Microsoft][Pilote ODBC Microsoft Access] Instruction SQL non valide; 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT' ou 'UPDATE' attendus.
Remarque :
Cela focntionne très bien si l'on remplace la procédure stockée par la requête "Select * From Table" par exemple.