begin process at 2012 02 14 19:10:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Bases de données

 > 

test date avec requete


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

test date avec requete

mardi 13 août 2002 à 19:15:26 | test date avec requete

benyou

bonjour,
si qlq un peut m'aider, je m'arrive pas à executer une requeque SQL qui fait le test sur la date que j'ai saisie dans un formulaire el le champs dans la bd. je vous informe que j'utilse une connexion ODBC qui es la suivant

strConnect = "Provider=MSDASQL.1;Persist Security Info=False;User ID=sa;Data Source=BASEDON"
Set cnMabase = New ADODB.Connection
cnMabase.Open strConnect, "sa", ""
Set Matable = New ADODB.Recordset

Ma requete est la suivante :
Matable.Open " select * from mouv where mtnhtl<> 0.00 and datefact = MaDate ", cnMabase

apres execution de la requete je recoi le message suivant:

erreur :'2147217900(80040e14)
[Simba][Simba ODBC Driver] erreur in expression:MaDate


Merci
mardi 13 août 2002 à 20:51:19 | Re : test date avec requete

keopsk


Pouer commencer MaDate est une variable. il faut donc qu'il soit traduite par sa valeur dans la chaîne sql

.. " select * from mouv where mtnhtl<> 0.00 and datefact = " & MaDate , ..

Faite les conversion si nécessaire

@+




-------------------------------
Réponse au message :
-------------------------------

bonjour,
si qlq un peut m'aider, je m'arrive pas à executer une requeque SQL qui fait le test sur la date que j'ai saisie dans un formulaire el le champs dans la bd. je vous informe que j'utilse une connexion ODBC qui es la suivant

strConnect = "Provider=MSDASQL.1;Persist Security Info=False;User ID=sa;Data Source=BASEDON"
Set cnMabase = New ADODB.Connection
cnMabase.Open strConnect, "sa", ""
Set Matable = New ADODB.Recordset

Ma requete est la suivante :
Matable.Open " select * from mouv where mtnhtl<> 0.00 and datefact = MaDate ", cnMabase

apres execution de la requete je recoi le message suivant:

erreur :'2147217900(80040e14)
[Simba][Simba ODBC Driver] erreur in expression:MaDate


Merci
mardi 13 août 2002 à 20:51:28 | Re : test date avec requete

keopsk


Pouer commencer MaDate est une variable. il faut donc qu'il soit traduite par sa valeur dans la chaîne sql

.. " select * from mouv where mtnhtl<> 0.00 and datefact = " & MaDate , ..

Faite les conversions si nécessaire

@+




-------------------------------
Réponse au message :
-------------------------------

bonjour,
si qlq un peut m'aider, je m'arrive pas à executer une requeque SQL qui fait le test sur la date que j'ai saisie dans un formulaire el le champs dans la bd. je vous informe que j'utilse une connexion ODBC qui es la suivant

strConnect = "Provider=MSDASQL.1;Persist Security Info=False;User ID=sa;Data Source=BASEDON"
Set cnMabase = New ADODB.Connection
cnMabase.Open strConnect, "sa", ""
Set Matable = New ADODB.Recordset

Ma requete est la suivante :
Matable.Open " select * from mouv where mtnhtl<> 0.00 and datefact = MaDate ", cnMabase

apres execution de la requete je recoi le message suivant:

erreur :'2147217900(80040e14)
[Simba][Simba ODBC Driver] erreur in expression:MaDate


Merci
jeudi 15 août 2002 à 11:22:12 | Re : test date avec requete

benyou

Bonjour keopsk et merci de me repondre.
j'ai converti ma chaine en date mais ce ne donne rien. ( je t'informe que c'est pas une base access parceque la syntax n'accept pas le signe #, c'est une connexion ODBC)
merci et a+




-------------------------------
Réponse au message :
-------------------------------


Pouer commencer MaDate est une variable. il faut donc qu'il soit traduite par sa valeur dans la chaîne sql

.. " select * from mouv where mtnhtl<> 0.00 and datefact = " & MaDate , ..

Faite les conversion si nécessaire

@+




-------------------------------
Réponse au message :
-------------------------------

bonjour,
si qlq un peut m'aider, je m'arrive pas à executer une requeque SQL qui fait le test sur la date que j'ai saisie dans un formulaire el le champs dans la bd. je vous informe que j'utilse une connexion ODBC qui es la suivant

strConnect = "Provider=MSDASQL.1;Persist Security Info=False;User ID=sa;Data Source=BASEDON"
Set cnMabase = New ADODB.Connection
cnMabase.Open strConnect, "sa", ""
Set Matable = New ADODB.Recordset

Ma requete est la suivante :
Matable.Open " select * from mouv where mtnhtl<> 0.00 and datefact = MaDate ", cnMabase

apres execution de la requete je recoi le message suivant:

erreur :'2147217900(80040e14)
[Simba][Simba ODBC Driver] erreur in expression:MaDate


Merci

mercredi 21 août 2002 à 21:12:46 | Re : test date avec requete

zefri

Les formats de date posent souvent des problèmes lorsque l'on veut interroger une base de données ! Il faut toujours avoir à l'esprit que la requête telle que tu l'exécute ici est une chaine de caractère non typée. La base de donnée va essayer d'éxécuter littéralement "select * from mouv where mtnhtl<> 0.00 and datefact = MaDate ", et forcément comme MaDate, elle ne sait pas ce que c'est, ça plante.
Je ne connais pas exactement la syntaxe pour SQLServer, mais sous Oracle pour que ta requête fonctionne il faudrait que tu code un truc du genre

Matable.Open " select * from mouv where mtnhtl<> 0.00 and To_Char(datefact, 'DD/MM/YYYY') = " & format(MaDate, 'dd/mm/yyyy')

C'est à dire qu'il faut que tu convertisses la valeur de ta variable et cellle de la colonne que tu veux tester en une chaine de caractère de même format pour que la base de donnée puisse l'interprêter correctement.

Tu me dira que mtnhtl<> 0.00 ne pose pas de problème dans ton cas, c'est que là SQL fait la conversion tout seul comme un grand, mais tu n'es pas là non plus à l'abris d'une surprise, parceque rien ne te dis que le symbole décimal est la virgule sur ton serveur, auquel cas ça plantera aussi.

L'autre solution est d'utiliser l'objet commande et la collection parameters, avec une syntaxe du genre
MaCommande.comandtext = "select * from mouv where mtnhtl<> ? and datefact = ? "
puis ajouter deux paramètres (typés) à ta collection parameters, puis l'éxécuter. J'ai sauté quelques étapes, mais si tu veux un exemple précis, tu peux jeter un oeil là :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdconcommandparams.asp

C'est sûr ça fait beaucoup de code, mais il est en béton.

Bon courage !


-------------------------------
Réponse au message :
-------------------------------

Bonjour keopsk et merci de me repondre.
j'ai converti ma chaine en date mais ce ne donne rien. ( je t'informe que c'est pas une base access parceque la syntax n'accept pas le signe #, c'est une connexion ODBC)
merci et a+




-------------------------------
Réponse au message :
-------------------------------


Pouer commencer MaDate est une variable. il faut donc qu'il soit traduite par sa valeur dans la chaîne sql

.. " select * from mouv where mtnhtl<> 0.00 and datefact = " & MaDate , ..

Faite les conversion si nécessaire

@+




-------------------------------
Réponse au message :
-------------------------------

bonjour,
si qlq un peut m'aider, je m'arrive pas à executer une requeque SQL qui fait le test sur la date que j'ai saisie dans un formulaire el le champs dans la bd. je vous informe que j'utilse une connexion ODBC qui es la suivant

strConnect = "Provider=MSDASQL.1;Persist Security Info=False;User ID=sa;Data Source=BASEDON"
Set cnMabase = New ADODB.Connection
cnMabase.Open strConnect, "sa", ""
Set Matable = New ADODB.Recordset

Ma requete est la suivante :
Matable.Open " select * from mouv where mtnhtl<> 0.00 and datefact = MaDate ", cnMabase

apres execution de la requete je recoi le message suivant:

erreur :'2147217900(80040e14)
[Simba][Simba ODBC Driver] erreur in expression:MaDate


Merci


jeudi 22 août 2002 à 12:21:50 | Re : test date avec requete

benyou

bonjour zefri et merci de tes conseil

je t'informe que depuis le temps que j'ai posté ce message j'ai reussie à surmenter le probleme date parcequ'il falait ecrire dans la requete : dtfact = '" & Format(DateDE.Text, "yyyy-mm-dd") & "'
en ce qui concerne les chiffre decimal je vais voir sur l'adress que tu as proposé. je t'achere de t'informer de l'evolution de mon projet pacrceque jusque la j'ai un probleme avec msflexgrid et je suis entrain d'arracher les cheveaux pour la faire soumettre à ma loi

merci pour tout et a+ [SD]


-------------------------------
Réponse au message :
-------------------------------

Les formats de date posent souvent des problèmes lorsque l'on veut interroger une base de données ! Il faut toujours avoir à l'esprit que la requête telle que tu l'exécute ici est une chaine de caractère non typée. La base de donnée va essayer d'éxécuter littéralement "select * from mouv where mtnhtl<> 0.00 and datefact = MaDate ", et forcément comme MaDate, elle ne sait pas ce que c'est, ça plante.
Je ne connais pas exactement la syntaxe pour SQLServer, mais sous Oracle pour que ta requête fonctionne il faudrait que tu code un truc du genre

Matable.Open " select * from mouv where mtnhtl<> 0.00 and To_Char(datefact, 'DD/MM/YYYY') = " & format(MaDate, 'dd/mm/yyyy')

C'est à dire qu'il faut que tu convertisses la valeur de ta variable et cellle de la colonne que tu veux tester en une chaine de caractère de même format pour que la base de donnée puisse l'interprêter correctement.

Tu me dira que mtnhtl<> 0.00 ne pose pas de problème dans ton cas, c'est que là SQL fait la conversion tout seul comme un grand, mais tu n'es pas là non plus à l'abris d'une surprise, parceque rien ne te dis que le symbole décimal est la virgule sur ton serveur, auquel cas ça plantera aussi.

L'autre solution est d'utiliser l'objet commande et la collection parameters, avec une syntaxe du genre
MaCommande.comandtext = "select * from mouv where mtnhtl<> ? and datefact = ? "
puis ajouter deux paramètres (typés) à ta collection parameters, puis l'éxécuter. J'ai sauté quelques étapes, mais si tu veux un exemple précis, tu peux jeter un oeil là :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdconcommandparams.asp

C'est sûr ça fait beaucoup de code, mais il est en béton.

Bon courage !


-------------------------------
Réponse au message :
-------------------------------

Bonjour keopsk et merci de me repondre.
j'ai converti ma chaine en date mais ce ne donne rien. ( je t'informe que c'est pas une base access parceque la syntax n'accept pas le signe #, c'est une connexion ODBC)
merci et a+




-------------------------------
Réponse au message :
-------------------------------


Pouer commencer MaDate est une variable. il faut donc qu'il soit traduite par sa valeur dans la chaîne sql

.. " select * from mouv where mtnhtl<> 0.00 and datefact = " & MaDate , ..

Faite les conversion si nécessaire

@+




-------------------------------
Réponse au message :
-------------------------------

bonjour,
si qlq un peut m'aider, je m'arrive pas à executer une requeque SQL qui fait le test sur la date que j'ai saisie dans un formulaire el le champs dans la bd. je vous informe que j'utilse une connexion ODBC qui es la suivant

strConnect = "Provider=MSDASQL.1;Persist Security Info=False;User ID=sa;Data Source=BASEDON"
Set cnMabase = New ADODB.Connection
cnMabase.Open strConnect, "sa", ""
Set Matable = New ADODB.Recordset

Ma requete est la suivante :
Matable.Open " select * from mouv where mtnhtl<> 0.00 and datefact = MaDate ", cnMabase

apres execution de la requete je recoi le message suivant:

erreur :'2147217900(80040e14)
[Simba][Simba ODBC Driver] erreur in expression:MaDate


Merci



mercredi 28 avril 2004 à 10:54:42 | Re : test date avec requete

aminaloubna

je me suis connectée à une base de données sql server à partir de vb mais en cas où je change de serveur est-ce que je vais avoir des problèmes dans l'application
dimanche 7 décembre 2008 à 16:47:14 | Re : test date avec requete

feubi

moi aussi 'ai le meme probleme avec access si vous pouvez me donner la syntaxe pour access je vous serai reconnaissant
merci d'avance
dimanche 7 décembre 2008 à 16:47:23 | Re : test date avec requete

feubi

moi aussi 'ai le meme probleme avec access si vous pouvez me donner la syntaxe pour access je vous serai reconnaissant
merci d'avance


Cette discussion est classée dans : date, odbc, test, requete, cnmabase


Répondre à ce message

Sujets en rapport avec ce message

Requete SQL [ par funtay ] bonjour, j'ai un problème de syntaxe dans une requete SQL.En fait ,j'ai une date de début (c'est un maskedbox( txt_datedeb)) et une date de fin (c'est toujours pb de requete SQL [ par funtay ] salut à tous!!!J'ai un problème avec la syntaxe d'une requete.J'ai 2 contrôles(maskedbox) qui correspondent à une date de début (datedebut) et une dat pb avec un bug entre Vb et Access [ par Seishiro ] Bonjour;je dois debuger un soft et je n'arrive pas a savoir pourquoi VB n'est pas content quand il arrive a "Set rs = Base.open......."Le Soft doit ta DEBUTANTE - SQL et ADO [ par Gaëlle ] BonjourJe souhaite inclure une requete SQL ds mon code source pour aller chercher des infos sur un serveur via une connection ODBC.Pb: J'ai vraiment d [SQL] URGENT svp pour une requete de groupement [ par Dinbougre ] SVP c vrmt urgent et j'avance pas depuis vendredig une table CA(date, total)la date est de type jj/mm/aaaaje fais une requete qui affiche le tous les Requete comparaison date [ par seedorf ] salut, en vb j'ai besoins de faire une requete qui extrait les enregistrement dont la valeur d'un champ est compris entre deux dates que je chsois ds requete/base données [ par Mariotte42 ] BonjourMa requete ne fonctionne pas,un message d'erreur me dit "type de données incompatible dans l' expression du critere". Mes champ sont bien au fo Requetes SQL [ par PaulScholes ] Je fait 2 requetes sous Access97, elle sont presque identiques, pourtant, l'une marche et pas l'autre, pourquoi ?requete N°1 :Set MyRS = MyDB.OpenReco une requete de suppression [ par Fimagen ] Salut tout le mondej'ai un proble que je n'arrive pas à résoudre :Voila c'est une appli qui gere les réservations dans un hotel et les données sont st REQUETE SUR LES DATES !!!!!!!! [ par asd ] Bonjour a tous,Je m'arrache les cheveux pour ecrire une requete avec comme criteres les dates...J'ai un fichier de "TARIFS" qui ont une date de debut


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,484 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales