cs_mohellebi
Messages postés98Date d'inscriptionmercredi 31 octobre 2007StatutMembreDernière intervention 1 août 2019
-
Modifié par BunoCS le 18/11/2013 à 15:09
cs_mohellebi
Messages postés98Date d'inscriptionmercredi 31 octobre 2007StatutMembreDernière intervention 1 août 2019
-
29 nov. 2013 à 00:10
Bonjour,
Actuellement je développe une application vb 2008
maintenant mon problème et l'affichage d'un datetimepiker à partir d'une recherche que j'exécute avec le code si-dessous , je précise que ce code s'exécute sans probléme lorsqu'il s'agis d'un autre critaire de recherche.
Merci d'avance pour votre aide
Dim connexion As New SqlConnection
connexion.ConnectionString = "Data Source=.\sqlexpress;Initial Catalog=billet;Integrated Security=True"
connexion.Open()
Dim strRequete As String = "SELECT navire_traverse,datedep_traverse, sens_traverse FROM traverse WHERE datedep_traverse = '#" & DateTimePicker2.Text & "#'"
Dim dtt As DataTable
Dim oSqlDataAdapter As New SqlDataAdapter(strRequete, connexion)
Dim oDataSet As New DataSet("traverse")
oSqlDataAdapter.Fill(oDataSet, "traverse")
dtt = oDataSet.Tables("traverse")
ComboBox1.Text = oDataSet.Tables("traverse").Rows(Place_Enregistrement).Item(0)
DateTimePicker1.Text = oDataSet.Tables("traverse").Rows(Place_Enregistrement).Item(1)
ComboBox4.Text = oDataSet.Tables("traverse").Rows(Place_Enregistrement).Item(2)
oDataSet.Clear()
NHenry
Messages postés15112Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention13 avril 2024159 18 nov. 2013 à 18:29
Bonsoir,
SqlConnection (Donc SQL Server)
WHERE datedep_traverse = '#" & DateTimePicker2.Text & "#'"
(retranscrit ça donnerair : '#31/12/2013#' )
Es-tu sûr que c'est comme ça que la date doit être formatée pour SQL Server ?
De plus, selon la localisation de ton PC, le format de la date change, donc utiliser le .Text n'est pas une bonne idée.
DateTime.ToString(...)
cs_mohellebi
Messages postés98Date d'inscriptionmercredi 31 octobre 2007StatutMembreDernière intervention 1 août 20193 20 nov. 2013 à 10:48
Bonjour,
d'abord merci pour votre repense
en fait la date est bien jj/mm/aaaa, ensuite pour les dièses je ne sais pas exactement, c'est sur le net que j'ai pu trouver ça.
j'explique un peu plus, j ai réglé la propriété format de mon DateTimePicker à short qui veut dire jj/mm/aaaa au même format que sql serveur, ensuite j'exécute avec succès ma close INSERT pour l'insertion des données, en revanche je n'arrive toujours pas à exécuter l affichage .
Dim command As New sqlcommand Dim dtt As DataTable Dim ObjetDataSet As New DataSet command.Connection = Connection command.CommandText = "SELECT navire_traverse,datedep_traverse, sens_traverse FROM traverse WHERE datedep_traverse = [?] ; "
Try command.Parameters.Add("?", OleDbType.Date).Value = DateTimePicker2.Text ObjetDataAdapter = New OleDbDataAdapter(command) Dim oSqlDataAdapter As New SqlDataAdapter(command) Dim oDataSet As New DataSet("traverse") oSqlDataAdapter.Fill(oDataSet, "traverse") dtt = oDataSet.Tables("traverse")
Catch ex As Exception MessageBox.Show(ex.Message) End Try
PapyNormand
Messages postés27Date d'inscriptionsamedi 7 août 2010StatutMembreDernière intervention16 janvier 20141 26 nov. 2013 à 13:50
Pourquoi utiliser un OledbDataAdapter avec un objet SqlCommand ?
SqlCommand et SqlConnection ( espace de nom Sysyem.Data.SqlClient ) ont été conçus pour une utilisation avec .Net SQL Server Data Provider qui n'a rien à voir avec OLEDB. Voir
http://msdn.microsoft.com/fr-fr/library/a6cd7c08(v=vs.110).aspx Vous pourrez lire notamment :
"Le fournisseur de données .NET Framework pour SQL Server (SqlClient) utilise son propre protocole pour communiquer avec SQL Server. Il est léger et ses performances sont élevées car il est optimisé de façon à accéder directement à SQL Server, sans ajout d'une couche OLE DB ou ODBC (Open DataBase Connectivity)"
Pour l'emploi des 2 symbols # entourant une date voir
http://msdn.microsoft.com/fr-fr/library/dzy06xhf(v=vs.110).aspx http://msdn.microsoft.com/fr-fr/library/3eaydw6e(v=vs.110).aspx Avec un SqlCommand , on utilise un SqlCommandParameter
don't on definit le type de données en DateTime ( la valeur peut être récupérée d'un DateTimePicker par la valeur de la propriété Value et cela évite beaucoup de possibles problèmes de conversion chaine de caractères en DateTime.
Il semblerait que le type Date de VB soit compatible avec le type DateTime de l'espace de nom System.DateTime. Mais je préfère toujours m'appuyer sur des types de données defines dans .Net Framework plutôt que les types spécifiques à un langage ( sur les forums , j'ai souvent fourni des extraits de code en VC# , parfois , on me demande la traduction en VB, et celle-ci est énormément facilitée si les types de données sont defines dans le .Net Framework et non spécifiques à un langage , vieille expérience depuis 2007 )
Bonne journée
cs_ShayW
Messages postés3253Date d'inscriptionjeudi 26 novembre 2009StatutMembreDernière intervention 3 décembre 201957 26 nov. 2013 à 14:10
Dim command As New sqlcommand Dim dtt As DataTable Dim ObjetDataSet As New DataSet command.Connection = Connection command.CommandText = "SELECT navire_traverse,datedep_traverse, sens_traverse FROM traverse WHERE datedep_traverse = [?] ; "
Dim oSqlDataAdapter As New SqlDataAdapter(command) Dim oDataSet As New DataSet("traverse") oSqlDataAdapter.Fill(oDataSet, "traverse") dtt = oDataSet.Tables("traverse")
Catch ex As Exception MessageBox.Show(ex.Message) End Try
le demandeur n'a pas encore répondu
PapyNormand
Messages postés27Date d'inscriptionsamedi 7 août 2010StatutMembreDernière intervention16 janvier 20141 26 nov. 2013 à 18:14
Merci de votre réponse.
Pas de problem , j'espère simplement que vous accepterez mes excuses si mon commentaire vous a vexé.
Bonne soirée
cs_ShayW
Messages postés3253Date d'inscriptionjeudi 26 novembre 2009StatutMembreDernière intervention 3 décembre 201957 26 nov. 2013 à 23:06
non pas du tout c.a.d le commentaire ne m'a pas vexé
bonne continuation
20 nov. 2013 à 10:48
d'abord merci pour votre repense
en fait la date est bien jj/mm/aaaa, ensuite pour les dièses je ne sais pas exactement, c'est sur le net que j'ai pu trouver ça.
j'explique un peu plus, j ai réglé la propriété format de mon DateTimePicker à short qui veut dire jj/mm/aaaa au même format que sql serveur, ensuite j'exécute avec succès ma close INSERT pour l'insertion des données, en revanche je n'arrive toujours pas à exécuter l affichage .