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 :

VB.NET et SQL SERVER


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 58
    Par défaut VB.NET et SQL SERVER
    Bonjour à tous,

    je suis novice en VB.NET, mais j'ai l'expérience de développement VBA sous MS ACCESS, soit avec bases mdb et DAO, soit bases SQL SERVER et projet adp avec ADO.

    Je voudrais transformer une application adp vers une application .NET (en utilsant VB 2010 Express et SQL SERVER 2008 R2 Express)

    J'ai fait une copie de ma base (avec SQL management studio) pour commencer, puis j'ai créé un projet VB.NET, et, avec le wizard, un dataset connecté sur cette base, un formulaire avec un datagridview et un bouton qui me renvoie dans un msgbox la valeur de la clé de la ligne courante (l'étape suivante consistera à appeler un procédure stockée pour faire un update)

    A l'exécution ça fonctionne

    Pourtant : si je veux gérer ma base direct. depuis SSMS, je remarque qu'elle est maintenant "anormale", je ne peux plus voir les objets de ma base, j'ai une erreur si je veux la détacher (un peu comme si elle était corrompue), etc..

    Il y a une chose en plus que je ne comprends pas : dans le wizard, là ou on choisit la base à connecter, je dois choisir un fichier mdf et non une base de données (comme avec Access où l'on choisit une base pour le projet adp), ça me parait illogique car un fichier n'est rien sans le serveur, et je ne veut pas que mon aplication soit connectée à une base détachée mais une base attachée servie par SQL Server.

    Malgré tout les bouquins et tutoriels que j'ai lus, il y un concept qui m'échappe. Quelqu'un pourrait-il m'éclairer sur la connection entre SQL Server et ADO.NET (note : je parle de connection établie une fois pour toutes au niveau de l'appli, cette appli étant basée sur une base et une seule, je n'ai pas besoin de savoir comment établir programmatiquement une connexion à la volée au runtime)

    Merci d'avance

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    les assistants de connexion aux données de vb express ne fonctionnent qu'avec sql server compact (bases en fichiers)
    les versions payantes ont les assistants pour sql server "normal"

    par contre il est tout à fait possible (et recommandé ?) de se passer des assistants, car niveau code on peut quand même tout faire avec la version gratuite de vb ...


    après pour ce qui est de la connection c'est rare de n'en utiliser qu'une seule, car déjà quand elle plante (ca peut arriver) il faut en recréer une autre
    de plus quand on a besoin de performances, on en ouvre plusieurs en même temps
    ensuite les assistants ne font que taper du code à ta place, donc dans tous les cas la connexion est créée pendant l'exécution
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 58
    Par défaut
    Merci Pol63,

    hélas pour moi, j'ai peur de me lancer dans du code complexe (pour l'instant), VB.NET est très compliqué quand on vient de VBA. Malgré tout, c'est bizarre que l'assistant propose SQL Server en plus de SQL Server Compact.

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    y a rien de très compliqué
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    dim conn as new sqlconnection("server=ip\nominstance;database=mabase;user id=login;password=mot_de_passe")
    conn.open
     
    dim cmd as new sqlcommand
    cmd.connection = conn
    cmd.commandtext = "SELECT * FROM Table"

    ensuite soit faire un execute sur le command, soit dire à un datadapter de le faire pour remplir une datatable (ou un dataset)


    après dans tous les cas si tu veux faire du .net il va falloir apprendre
    si tu ne veux pas coder et tout faire via quelques clics, utilises plutot windev
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 58
    Par défaut
    Merci Pol63,

    je vais essayer ta méthode. Ce n'est pas que je ne veux pas apprendre, mais je ne peux pas apprendre tout en même temps.

    Pour ce qui est de la connexion, je voulais dire qu'un grand nombre d'applis (frontales de bd) n'en n'ont besoin que d'une et définie une fois pour toutes et que c'est pour ça qu'un wizard est très pratique.

    J'avais lu que vb.net était aussi facile à utiliser qu' Access, hmm, ce n'est pas tout fait ça .... je voulais traiter cette partie de connexion le + vite possible pour me concentrer sur le code "appli métier" des forms tout en ayant la possibilité d' analyser la base depuis mon appli Access existante pour tester si la partie vb.net fonctionnait bien. (c.a.d une seule base SQL Server Express avec 2 applis clientes, une appli Access terminée et une appli vb.net en développement et qui remplacera la première dés qu'elle sera terminée)

  6. #6
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    vb.net n'est pas aussi simple qu'access, il y a déjà énormément plus à apprendre que sur access
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

Discussions similaires

  1. [ADO.Net] Connexion à SQL SERVER 2005
    Par dumser1 dans le forum Accès aux données
    Réponses: 9
    Dernier message: 17/01/2009, 17h37
  2. [VB.NET] connexion à Sql server 2005 via script vb
    Par grandslam dans le forum Windows Forms
    Réponses: 6
    Dernier message: 21/06/2006, 11h13
  3. [vb.net] transaction sql server
    Par iamunknown dans le forum Windows Forms
    Réponses: 9
    Dernier message: 05/02/2006, 17h08
  4. [VB.NET 2005][SQL SERVER 2005] Pb d'insertion en BdD
    Par jhary07 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 02/01/2006, 08h53
  5. [VB.net] Connection SQL server
    Par WriteLN dans le forum Windows Forms
    Réponses: 1
    Dernier message: 19/08/2005, 17h39

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