IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

lister des répertoires et stocker les chemin dans la base de données


Sujet :

Windows Forms

  1. #1
    Membre très actif
    Homme Profil pro
    ertertaertar
    Inscrit en
    Mai 2013
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : ertertaertar

    Informations forums :
    Inscription : Mai 2013
    Messages : 314
    Par défaut lister des répertoires et stocker les chemin dans la base de données
    Bonjour; j'ai un petit soucis , j'ai une application qui doit chercher les répertoires et les fichiers contenant dans ces répertoires qui se trouvent tous dans un dossier puis stocker leurs chemin dans la base de données , j'ai fais une partie mais elle me stock qu'une seule ligne dans ma base c'est à dire elle prend aléatoirement un chemin de ceux qui se trouve dans le dossier et le stocke mon but est d'avoir des chemins et sous chemins comme ca :
    C:\Users\caes\Desktop\Imane\ES
    C:\Users\caes\Desktop\Imane\Exemples 28042017
    C:\Users\caes\Desktop\Imane\Nouveau dossier
    C:\Users\caes\Desktop\Imane\Exemples 28042017.rar
    C:\Users\caes\Desktop\Imane\Stats CHQ vs INWI_28042017.xlsx
    C:\Users\caes\Desktop\Imane\Stats INWI SALES UP_28042017.xls
    C:\Users\caes\Desktop\Imane\Stats INWI_28042017.xls
    C:\Users\caes\Desktop\Imane\ES\28042017.xlsx
    C:\Users\caes\Desktop\Imane\ES\28042017_SU.xlsx
    C:\Users\caes\Desktop\Imane\ES\CadencesBrutes(20170428).csv
    C:\Users\caes\Desktop\Imane\ES\CadencesBrutes(20170428).xlsx
    C:\Users\caes\Desktop\Imane\ES\Equipe.xlsx
    C:\Users\caes\Desktop\Imane\ES\FM 28042017.xlsx
    C:\Users\caes\Desktop\Imane\ES\Nbre d'heures de présences_042017.xls
    C:\Users\caes\Desktop\Imane\ES\Stats CHQ vs INWI_28042017.xlsx
    C:\Users\caes\Desktop\Imane\Exemples 28042017\CadencesBrutes(20170428).xlsx
    C:\Users\caes\Desktop\Imane\Exemples 28042017\Nbre d'heures de présences_042017.xls
    C:\Users\caes\Desktop\Imane\Exemples 28042017\Stats Préparation CHQ_28042017.xlsx


    si vous pouvez voir , ce résultat je l'obtient quand j'affiche mon résultat dans un fichier Text , mais moi je veux les stocker dans la base de données donc j'ai utiliser un TextBox , du coup il m'insère juste une ligne qui s'affiche comme résultat dans le TextBox, pouvez vous m'aider ?
    voici le code avec lequelle je récupère les répertoires et sous répertoires :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    Try
     
                Dim selectedDirectory As String = String.Empty
                Dim selectedFile As String = String.Empty
                Dim dossiersTrouvé = Directory.GetDirectories("C:\Users\caes\Desktop\Imane")
                For Each ligneD In dossiersTrouvé
                    selectedDirectory = ligneD
     
                    If (selectedDirectory IsNot Nothing) Then
                        TextBox1.Text = selectedDirectory
     
                    End If
                Next
                Dim fichiersTrouvé = Directory.GetFiles("C:\Users\caes\Desktop\Imane", "*.*", SearchOption.AllDirectories)
                For Each ligneF In fichiersTrouvé
                    selectedFile = ligneF
     
                    If (selectedFile IsNot Nothing) Then
                        TextBox2.Text = selectedFile
                    End If
                Next
            Catch ex As Exception
     
            End Try
    et voici le code avec lequel je stocke dans ma base de données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     myconnection = New SqlConnection("Data Source=---;Initial Catalog=PDF;Persist Security Info=True;User ID=sa;Password=--")
     
     
     
            myconnection.Open()
     
            mycommand = New SqlCommand("insert into pdf ([Repertoires],[Fichiers]) values ( '" & TextBox1.Text & "','" & TextBox2.Text & "')", myconnection)
     
            mycommand.ExecuteNonQuery()
     
            MessageBox.Show("Chemin Stocké" & ra)
     
            myconnection.Close()
    Merci d'avance

  2. #2
    Membre très actif
    Homme Profil pro
    ertertaertar
    Inscrit en
    Mai 2013
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : ertertaertar

    Informations forums :
    Inscription : Mai 2013
    Messages : 314
    Par défaut
    youhouuu il y'a quelqu'un ?

  3. #3
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Je ne comprends pas trop votre problème.

    Essayez donc ce code (combinaison des deux, sans utiliser le TextBox2 qui ne sert à rien d'autre qu'à débuger) :
    Code vb.net : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    Try
     
                Dim selectedDirectory As String = String.Empty
                Dim selectedFile As String = String.Empty
                Dim dossiersTrouvé = Directory.GetDirectories("C:\Users\caes\Desktop\Imane")
                For Each ligneD In dossiersTrouvé
                    selectedDirectory = ligneD
     
                    If (selectedDirectory IsNot Nothing) Then
     
                Dim fichiersTrouvé = Directory.GetFiles("C:\Users\caes\Desktop\Imane", "*.*", SearchOption.AllDirectories)
                For Each ligneF In fichiersTrouvé
                    selectedFile = ligneF
     
                    If (selectedFile IsNot Nothing) Then
    myconnection = New SqlConnection("Data Source=---;Initial Catalog=PDF;Persist Security Info=True;User ID=sa;Password=--")
     
     
     
            myconnection.Open()
     
            mycommand = New SqlCommand("insert into pdf ([Repertoires],[Fichiers]) values ( '" & TextBox1.Text & "','" & selectedFile & "')", myconnection)
     
            mycommand.ExecuteNonQuery()
     
            MessageBox.Show("Chemin Stocké : " & selectedDirectory & selectedFile)
     
            myconnection.Close()
     
     
     
                    End If
                Next
     
                    End If
                Next
            Catch ex As Exception
     
            End Try

    Je vous laisse réindenter.

    Ca, c'était pour vous débloquer.

    Maintenant, vous faites mal :
    1/ Au lieu de générer votre requête SQL à grand coups de concaténations, utilisez une requête paramétrée : vous y gagnerez en performances, lisibilité, et surtout en sécurité et stabilité.
    http://webman.developpez.com/article...rameter/vbnet/

    2/ Ensuite, stocker des chemins de fichier dans une base, c'est bien... Sauf que la base de donnée et les fichiers vont évoluer chacun de leur côté. En cas de restauration d'une base, il y a de grandes chances pour que ça ne matche pas. On est en 2017, et les solutions pour gérer ça "proprement" et "simplement" sont légion. A commencer par le FileTable de SQL Server.
    https://docs.microsoft.com/fr-fr/sql...les-sql-server

  4. #4
    Membre très actif
    Homme Profil pro
    ertertaertar
    Inscrit en
    Mai 2013
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : ertertaertar

    Informations forums :
    Inscription : Mai 2013
    Messages : 314
    Par défaut
    Merci beaucoup ta solution est impeccable , reste quelques modifications que je dois faire mais ce n'st pas grave , merci encore une fois.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Stocker les images dans la base de données
    Par DavidPAY dans le forum Administration
    Réponses: 2
    Dernier message: 28/11/2007, 10h19
  2. Réponses: 1
    Dernier message: 29/06/2007, 14h58
  3. [MySQL] comment stocker puis recuper les images dans une base de donnée
    Par essono dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 22/11/2006, 23h07
  4. Réponses: 1
    Dernier message: 22/11/2006, 22h49
  5. Stocker les sessions dans une base de données
    Par mic79 dans le forum Langage
    Réponses: 7
    Dernier message: 06/04/2006, 21h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo