URGENT - problème de requête -HELP

Zoom -  
kilher Messages postés 7 Statut Membre -
Bonsoir,

C'est urgent, qq un pourrait-il me dire pourquoi mon code suivant ne marche pas. Je souhaite tester si un titre est dans la base de données Access. Si oui, alors msgbox, sinon, InsertDatabase. Mais le problème est avec le "nb".

Avez-vous une idée ?

Merci d'avance.



Dim connstring As String="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &dbPath 

Dim sql As String ="SELECT COUNT(*) FROM News WHERE News_titre = " & news("title").InnerText 

Dim conn As New OleDbConnection() 
conn.ConnectionString = connstring 
conn.Open() 
Dim cmd As New OleDbCommand(sql, conn) 
Dim nb as integer = cmd.ExecuteNonQuery() 
conn.Close() 

If nb > 0 Then 
Msgbox("Le titre suivant existe déjà:"&news("title").InnerText) 
Else 
InsertDatabase() 
End If 


2 réponses

DaNot Messages postés 221 Statut Membre 163
 
Salut,

Rapdiement, il manque un GROUP BY a la fin.
Quand tu utilises des fonctions d'agregat, il faut indiquer l'agregation.
Sinon, autre chose, affiche la requete que tu formes. Il doit manquer les guillements pour la valuer de News_titre.

DaNot
un Libre ouvert à la source ...
0
kilher Messages postés 7 Statut Membre 7
 
Le GROUP BY n'est pas obligatoire
mais la query doit être

Dim sql As String ="SELECT COUNT(*) FROM News WHERE News_titre = '" & news("title").InnerText & "'"

'" = apostrophe puis guillemet
& "'" = & guillemet apostrophe guillemet

Didier
0