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 :

sqilite et vb


Sujet :

VB.NET

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 107
    Par défaut sqilite et vb
    voila j'ai crée une base sqlite avec sqilite administrator nommé test je l'es imprté sur mon application vb je utilise la datavieuw pour les informations ajouter avec un bouton ajout ca marche bien la relation avec la base
    le probleme si je suprime la base le logiciel recrée le fichier mais sans aucune table dedan. je veux que a l’ouverture de l'application il crée automatiquement la base et la table dans le dossier que je lui donne le chemin

    acctuellement avec ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Imports System.Data.SQLite
    Imports System.Data.SqlClient
    Public Class Form1
     Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
            Dim IDbConnection As New SQLite.SQLiteConnection("DataSource=C:\test.db3;Version=3;New=False;Compress=True;")
            IDbConnection.Open()
        End Sub
    ça me crée le fichier test.db3 dans le c mais vide

    je souhaite faire la table automatiquement

    cordialement

  2. #2
    Membre expérimenté
    Homme Profil pro
    Analyste Programmeur
    Inscrit en
    Septembre 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 176
    Par défaut
    Bonjour,

    SQLite a la particularité de créer le fichier de la base de donnée défini dans la chaine de connexion, si il n'existe pas. Donc dans ton cas : C:\test.db3
    Seulement voilà, il ne créé que le fichier, pas ce qu'il doit contenir, ça, c'est à toi de le faire.

    En gros, vu que tu a intégrer une base modèle à ton projet, ton process devrait être quelque chose comme :
    - Vérifier l’existence du fichier.
    - Si il n'existe pas, faire une copie de ton fichier modèle à l'emplacement voulu, pour avoir une base vide prête à l'emploi.
    - Te connecter à la base.

    C'est le principe, après tu auras surement d'autre test à faire, genre as-tu le droit de créer le fichier à l'endroit voulu, etc ...

    Maintenant, mon avis sur cette manière de faire : Ça ne marche qu'une fois ! (dans la majorité des cas)
    En effet, une fois que ton application est en production, ta base contiendra des données, donc pour faire évoluer ta base, pas question de la supprimer pour la recréer à vide, donc il faudra trouver une autre solution pour les évolutions futures.
    Je te laisse chercher un peu

    Bonne continuation.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    en revanche il est possible d’afficher le script sql de ta table dans SqlLiteAdmin!
    Edit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     Public Sub New()
            ' On verifie si la base existe  sinon on copie la base vierge 
            ' placée dans les resources
            Dim Database As String = System.Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) & "\MyBase.s3db"
            If File.Exists(Database) = False Then
                File.WriteAllBytes(Database, My.Resources.ProjetInit)
            End If
            OpenDataBase(Database)
            '
            'EffacerForm()
            'OpenDataBase()
        End Sub
    Images attachées Images attachées  
    Dernière modification par Invité ; 08/03/2016 à 14h05.

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