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

VB.NET Discussion :

Questions relatives à la BDD [Débutant]


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 52
    Points : 29
    Points
    29
    Par défaut Questions relatives à la BDD
    Bonjour,

    J'ai pour projet de créer une application qui comprendra un formulaire. Toutes les informations du formulaire seront stockées dans une BDD (propre à chaque poste). Ce logiciel sera placé sur différents ordinateurs, donc chaque ordinateur aura sa propre base. Je veux juste installer le futur programme sur le poste en question et c'est tout.

    J'aurais voulu savoir s'il était possible d'implanter une BDD vierge? Si je passe par SQL Server, suis-je obligé d'installer MS SQL sur les postes en question (je pense que oui vu qu'on utilise une fonction de connexion)?

    J'ai tout de même avancé la chose en créant une BDD.mdf qui je suppose est interne à l'application que je suis en train d'effectuer ?

    Nom : 2017-01-15 22_52_16-Test - Microsoft Visual Studio.png
Affichages : 239
Taille : 4,3 Ko

    J'aurais d'autres questions, mais si on pouvait m'éclairer d'abord sur ce point, ce serait génial.

    En vous remerciant,

    nLine Mayuri.

  2. #2
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    bonsoir,

    Oui tu peux passer par les ressources de ton projet et y ajouter une BDD vierge.

    ++

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 52
    Points : 29
    Points
    29
    Par défaut
    Merci pour ta réponse Wallace1.

    Donc ce que j'ai fais actuellement serait tout à fait viable ?
    Voilà, où j'en suis. J'ai créé un form totalement bidon ainsi qu'une table banale dans ma BDD.

    Nom : 2017-01-15 22_52_05-Test - Microsoft Visual Studio.png
Affichages : 211
Taille : 7,5 Ko

    Comment puis-je faire pour ajouter les infos contenues dans le textbox1 et 2 dans la BDD et de sauvegarder le tout ? Est-ce différent dans le programmation par rapport à une BDD sous SQL Server ?


    PS : Je viens de rajouter du code, sauf que ma table ne se met pas à jour et ce que je décide d'ajouter n'est pas pris en compte.

    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
    Private Sub btn_SaveData_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim con As New SqlConnection
            Dim cmd As New SqlCommand
            Try
                con.ConnectionString = "Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\Database1.mdf;Persist Security Info=True"
                con.Open()
                cmd.Connection = con
                cmd.CommandText = "INSERT INTO [Table] (NomIndividu, PrenomIndividu) VALUES ('" & TextBox1.Text & "' , '" & TextBox2.Text & "')"
                cmd.ExecuteNonQuery()
     
            Catch ex As Exception
                MessageBox.Show("Error while inserting record on table..." & ex.Message, "Insert Records")
            Finally
                con.Close()
            End Try
        End Sub
    Merci beaucoup.

  4. #4
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    bonjour,

    en fait ce que j entendais c est que :
    - tu crées une bdd de base avec tes tables sans données (donc vide)
    - tu l ajoutes dans les ressources de ton projet
    - lorsque l utilisateur ouvre ton programme la 1ere fois alors tu copies la bdd a un emplacement de son environnement système. Le chemin sera toujours le meme a moins de créer un fichier de config et de proposer a l utilisateur un enregistrement a un emplacement specifique.
    - l utilisateur utilise le programme et incremente la bdd avec ses données.

    La bdd ne pourra etre reinjectée sinon il faudra prevoir une recompilation du programme a l aide de codedom (ou dnlib ou monocecil).

    Pour l ajout de données il faut savoir quel sgbd tu utilises et suivre differents tuto sur le forum.

    voila tout.

    ++

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 52
    Points : 29
    Points
    29
    Par défaut
    Merci encore une fois Wallace.

    Je suis resté sur mon avancé actuelle. J'ai réussi à ajouter mes informations dans ma bdd.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
                Try
                    Me.Validate()
                    Me.EnfinTableBindingSource.EndEdit()
                    Me.TableAdapterManager.UpdateAll(Me.EnfinTableDataSet)
                    MessageBox.Show("Sauvegarde effectuée")
                    EnfinTableBindingSource.AddNew()
                    NomTextBox.Select()
                Catch ex As Exception
                    MessageBox.Show(ex.Message)
                End Try
        End Sub
    Maintenant, je bloque sur un outil de recherche. Grâce à une textbox et un bouton, mettre à jour un DataGridView seulement sur la valeur de la Textbox. Par exemple si je tape Pierre, j'aurais tous les noms des individus s'appelant Pierre (Nom).
    Je pensais qu'en implantant une requête dans la DataGridView (où l'on sélectionne avec Where Nom = ' & Textbox1.Text ') et une actualisation de celle-ci à l'aide d'un click sur bouton, cela fonctionnerait, mais non..

    Ma requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT        Id, Nom, Prenom, Adresse
    FROM            EnfinTable
    WHERE        (Nom = ' & Textbox1.Text')
    Après j'incorpore le fillby dans le click bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Try
                Me.EnfinTableTableAdapter.FillBy2(Me.EnfinTableDataSet.EnfinTable)
            Catch ex As System.Exception
                System.Windows.Forms.MessageBox.Show(ex.Message)
            End Try
    Je pense que c'est ma requête qui pose problème..

    Avant l'exécution du fillby :
    Nom : 2017-01-16 19_08_00-Form2.png
Affichages : 94
Taille : 3,5 Ko

    Après alors que j'entre un nom correctement :
    Nom : 2017-01-16 19_08_24-Form2.png
Affichages : 91
Taille : 1,8 Ko

    J'ai enfin résolu mon filtre après de longues heures, pour ceux que ça intéresse :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT        Id, Nom, Prenom, Adresse
    FROM            EnfinTable
    WHERE        (Nom LIKE @TextBox1)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
            Try
                Me.EnfinTableTableAdapter.FillByNomLike(Me.EnfinTableDataSet.EnfinTable, "%" & Me.TextBox1.Text & "%")
            Catch ex As Exception
                MessageBox.Show(ex.Message)
            End Try
        End Sub
    Maintenant j'ai une nouvelle question comment importer la ligne que l'on sélectionne dans la dataGridView sur un autre form afin de faire une sorte de remplissage automatique ?
    Par exemple, on sélectionne la ligne où il y a Antoine. Je veux copier son nom dans le form1 textbox1, son prénom dans le form1 textbox2, etc..

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

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