begin process at 2012 02 12 11:20:11
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Bases de données

 > 

vb2005 & SQL between date et variable


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

vb2005 & SQL between date et variable

lundi 8 mai 2006 à 18:32:28 | vb2005 & SQL between date et variable

lucki

bonjour à tous
J'utilise Visual Basic 2005 Express et SQL Express
j'entre dans un form deux variables date : date1 et date2 :

Dim date1 As Date
Dim date2 As Date
date1 = DateTimePicker1.Text
date2 = DateTimePicker2.Text
Me.Table1TableAdapter.FillBy(Me.FactureDataSet.Table1)

ensuite j'utilise requete SQL pour afficher dans datagridview toutes les données entre deux dates :

SELECT     [Cléf unique], Date, Objet, Credit, Debit
FROM         Table1
WHERE     (Date BETWEEN '&date1' AND '&date2')

le Problème : j'ai une erreur SQL : echec de la convertion d'une valeur datetime à partir d'une chaine de caractère.

Comment je dois procéder pour que mon code soit valide?
merci

lundi 8 mai 2006 à 18:43:45 | Re : vb2005 & SQL between date et variable

youil

Essaie 

SELECT     [Cléf unique], Date, Objet, Credit, Debit
FROM         Table1
WHERE     (Date BETWEEN #" & date1 & "# AND #" & date2 & "#)

lundi 8 mai 2006 à 19:18:44 | Re : vb2005 & SQL between date et variable

lucki

Merci Youil,
Mais sql express ne reconnait pas cette syntaxe...

je cherche plutot à trouver une syntaxe SQL supplementaire (car la mienne est accèpté dans l'assistant configuration de requètes tableAdapter)
qui permetterais de convertir la chaine de caractère de "date1" et "date2" pour etre compatible avec la colone date de ma table (system.datetime)
mardi 9 mai 2006 à 16:05:44 | Re : vb2005 & SQL between date et variable

lucki

j'ai peut etre une solution mais je n'arrive pas à faire une syntaxe correct.

L'utilisation de la commande CONVERT ou CAST...
Est-ce que quelqun peut m'expliquer comment l'intégrée de manière correcte pour que la variable &date1 et &date2, qui a priori sont des charactères, ce tranforment en datetime????

merci
mardi 9 mai 2006 à 17:55:21 | Re : vb2005 & SQL between date et variable

youil

Utilise DateTimePicker1.value et la il est en date
mardi 9 mai 2006 à 18:48:37 | Re : vb2005 & SQL between date et variable

georgiogp

Lucki, Bonjour,

Ta cde SQL

SELECT     [Cléf unique], Date, Objet, Credit, Debit
FROM         Table1
WHERE     (Date BETWEEN '&date1' AND '&date2')


Souvenir d'Oracle SQL : si tu entres dans le formulaire une date JJMMAAAA  -->

SELECT     [Cléf unique], Date, Objet, Credit, Debit
FROM         Table1
WHERE     (Date BETWEEN TO-DATE('&date1', 'JJMMAAAA') AND 

                                      TO-DATE('&date2', 'JJMMAAAA') 
                   )

Mais je ne sia si cette syntaxe existe en SQL Express.

Georgiogp
mardi 9 mai 2006 à 19:28:59 | Re : vb2005 & SQL between date et variable

lucki

Merci pour le code value, çe code sera plus propre. seulement c'est le générateur de requete qui fait l'erreur de convertion.Donc avant d'employer le code visual basic. autrement-dit, c'est la requete SQL qui dérange.

Pour le code oracle, en effet, sql ne reconnait pas la commande to-date...

Merci quand même.
Je continuerais à chercher de mon coté en plus de vos aides présieuses

jeudi 11 mai 2006 à 14:04:04 | Re : vb2005 & SQL between date et variable

lucki

Réponse acceptée !
J'ai trouvé le problème:) = voici le nouveau code :
SELECT [Cléf unique], Date, Objet, Credit, Debit FROM dbo.Table1
WHERE Date BETWEEN @date1 AND @date2

Pour créer une variable il faut utiliser @ et non &
Enfin les ' ' sont utilisés pour une expression ainsi que %

Merci pour votre participation.

samedi 13 mai 2006 à 00:55:22 | Re : vb2005 & SQL between date et variable

AzertyH

Bonjour,

Je suis confronté à ce problème consernant l'utilisation de between et ses variables date1 et date2. Moi, j'utilise ACCESS et non pas SQL. J'utilise aussi VB 2005.

Dans le dernier message de lucki, je comprend pas pourquoi il écrit "dbo.Table1". Moi j'aurais plutôt mis Table1 (sans le dbo).
D'autre part, sa veut dire quoi : [Cléf unique] ? Je n'est jamais utilisé cela dans mes requette.

Voila, moi aussi je doit utiliser between, pour rechercher dans ma base Access des infos comprises entre telle date et telle date.

Voici ce que j'ai écrit dans l'assistant de mon DataSet :
SELECT [date] FROM intervention WHERE [date] BETWEEN @date1 AND @date2

Mais VB2005 n'est pas content, il me signale une erreur :
 "Erreur dans la clause WHERE à coté de '@'. Impossible d'analyser le texte de la requette."

Par ailleur, il faut aussi charger les données dans le DataSet avec la fameuse instruction:
Me.InterventionTableAdapter.Fill(Me.BddsavDataSet.intervention)
Pouvez vous me compléter cette dernière avec les variable date1 et date2.

Merci pour votre aide;
Amicalement AzertyH

samedi 13 mai 2006 à 02:25:55 | Re : vb2005 & SQL between date et variable

lucki

Bonjour AzertyH

Pour information, il ya 13 ans j'ai appris à faire des softs sous Quick Basic de Ms-dos... Aujourd'hui je réapprend tout, cela fait deux semaine que je me suis mis à visual basic 2005... Donc ça va être dur de t'aider, mais je ferais mon possible pour le faire

Pour commencer, pour l'histoire du "dbo.", c'est le générateur de requètes qui l'a mis... Regarde les requètes que tu as ; par exemple pour moi et sous sql, j'ai la requète fill.getData() qui a été faite automatiquement. Pour moi, le "dbo.*" est présent. Si cela n'est pas le cas chez toi, ou que il n'y a pas de mess d'erreur (ce qui est le cas à prioris) c'est que cela n'est valable que sous SQL.

Pour le problème de tes variables, je n'ai pas la solution, je regarderais dans les msdn et autres....

Pour la question de l'execution de ta requete sous Vbasic, lorsque la requete sera OK visual reconnaitra les variables : ensuite, pour ma part, je n'ai pas réussi à lier la variable "dim date1"et "dim date2" et celles de ma requete donc :
j'ai utilisé un menu toolStrip :
En bas de ton formulaire (version concepteur) tu doit avoir la fonction : "InterventionTableAdapter"
Fait un clique droit dessus
Choisit "ajouter une requete"
Selectionne ta table et choisit "nom de requete existant"
Selectionne Fill()
Et fait Ok
: Dans ton form, tu as maintenant des TextBox et un bouton pour valider

Seul problème je n'ai pas réussi à faire que les TextBox intègrent la fonction Datetime, donc l'utilisateur est obligé de mettre en texte"12/05/2006" par exemple....


1 2

Cette discussion est classée dans : date, sql, date1, between, date2


Répondre à ce message

Sujets en rapport avec ce message

requete sql avec date!!! [ par laurent180 ] voila j'aimerai faire un tris dans ma table sqlvoici la requete que j'utilise: date1 = DateAdd("m", 1, Date)txtCodesSQL = "SELECT * FROM Table1 WHERE sql date [ par FASH ] Bonjour à tous, je voudrais faire une requete sql dans vb6 en utilisant BETWEEN pour rechercher une rendez-vous entre deux dates. La voiciSQLDeuxDates fourchette de date en SQL [ par jhon_smith ] bonjour, mon problème est comme suit : j'essai à partir de ma requette SQL de n'avoir dans le recordset que les éléments ayant une date comprise entre Problème insertion variable dans une tableà partir du code vba du bouton ajouter du formulaire [ par yokulan ] Bonjour à tous j'ai un problème avec l'insertion d'une variable dans une table à partir du code vba du bouton ajouter du formulaire:Private Sub Ajoute affichage de résultats d'une recherche entre deux date dans une datagridview [ par germany1970 ] Bonjour, mon probléme c'est quand j'effectue une recherche entre deux dates tous les enregistrements dans ma table sont affichés, donc il n'y a pas d Info sur le DTpick [ par MIKI101 ] Bonjour, Voici mon premier post est désolé si je fais une mauvaise demande. Voilà mon probléme: Sous excel je saisi via un DTPick une date avec l'h Remplacer Cdate par fonction SQL Server [ par js8bleu ] Bonjour, je voudrai faire une comparaison entre une date récupérée à partir d'une table (dateinscription from tableinscription) et un textbox contena Requete SQL de selection [ par toufiqihaddou ] Salut tout le monde, svp quelqu'un peut m'aider? je souhaite selectionner tout les champs d'une table avec code qualite = 3 et = vide avec champ Date Problème requêtes SQL via VBA [ par pitipilot ] Bonjour, je suis actuellement en train de manipuler une BDD SQL Server en VBA et je me heurte à plusieurs problèmes. Tout d'abord voici une partie de Manipulation de la date [ par devark ] Salut, je cherche la fonction qui permet de retrouver une date2 à partir d'une date1, en ajoutant à la date1 une période en jour, en mois ou en année.


Nos sponsors


Sondage...

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,842 sec (4)

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