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 :

Application multi users et SQL Server


Sujet :

VB.NET

  1. #1
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut Application multi users et SQL Server
    Bonjour à tous,

    je développe actuellement pour le fun une apppli de gestion d'entreprise que je voudrais multi utilisateurs et utilisant une base de données SQL server.

    Seulement voilà, je ne sais pas comment m'y prendre.

    Mon objectif est de faire un package d'installation de cet appli qui serait téléchargeable via une plateforme de téléchargement quelconque.

    Dois-je inclure SQL server dans ce package ? Comment ?

    De quelle manière dois-je créer cette DB pour mon développement ?

    Comment référencer ensuite cette DB sur les éventuels postes clients ?

    J'espère que vous comprendrez le sens de toutes ces questions et je m'arrête là pour le moment afin de pas trop compliquer les choses ! :-)

    Je poserai sans doute d'autres questions en cours de fil ...


    Merci à tous de bien vouloir éclairer ma lanterne :-)

    Amicalement,

    Greg
    [Il était une fois Delphi ....]


  2. #2
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    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 154
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut
    Euh...

    Je ne vois pas trop où se situe le problème.

    Déjà, il faut différencier "installation" et architecture.

    Quand on a une application client/serveur comme c'est le cas ici, on a une installation pour le client seul, et une installation pour le serveur seul.

    Donc non, ne pas inclure la BDD dans le script d'install, mais fournir deux scripts distincts.

    Ensuite, en .NET, on référence les bases de données en utilisant généralement le fichier de configuration, et notamment une "connectionstring". A vous d'indiquer aux utilisateurs la bonne cnx string pour atteindre leur serveur.
    On ne jouit bien que de ce qu’on partage.

  3. #3
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Eh bien je ne parle pas d'un problème mais bien d'une incompréhension de ma part au niveau d'un développement client / serveur.

    Donc si je comprend bien votre réponse et d'ailleurs je vous en remercie, c'est que je dois faire 2 install bien distinctes ?

    ok ! Mais comment m'y prendre ? Et qu'en est-il du développement ?

    Je suis un peu nian nian en ce qui concerne la vision client / serveur :-( C'est à dire que je ne sais pas comment aborder la chose.

    C'est pour cela que je je pose la question sur ce forum.

    Ensuite, en .NET, on référence les bases de données en utilisant généralement le fichier de configuration, et notamment une "connectionstring". A vous d'indiquer aux utilisateurs la bonne cnx string pour atteindre leur serveur.
    "connectionstring" sera le chemin d'installation de la base de données mais comment le connaitre ?

    Merci encore de votre aide.
    [Il était une fois Delphi ....]


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

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    la première chose à faire c'est installer sql server (express je pense) sur ton poste, pour que tu puisses voir ce que c'est à installer et à utiliser
    pour se connecter à la base de données ton programme doit utiliser un objet system.Dara.sqlclient.sqlconnection
    celui ci a besoin que tu lui donnes le connectionstring (où se connecter) du genre "server=ip_ou_nom_machine\nom_instance_sql_server;database=nom_de_ma_base;user id=machin;password=mdp"
    donc là tu devrais voir qu'installer sql server c'est déjà un gros morceau, il pose plein de questions, une isntall automatisée doit etre faisable (jamais essayé)
    sur le serveur il faudra aussi attacher la base de données automatiquement (une base vide)

    après vu que l'ip de la machine ne sera jamais la même il faudra que ca soit un paramètre dans ton programme, et là soit tu demandes à l'utilisateur de le saisir, soit tu fais un truc qui cherches sur le réseau local (pas toujours efficace à 100%) ...

    et après les requetes se font sur la base depuis tous les exe lancés sans soucis, un autre problème peut alors apparaitre, si sur 2 postes tu as un affichage d'un tableau avec des informations et qu'un utilisateur ajoute des infos, elle n'apparaitront pas automatiquement sur l'autre poste, si tu veux que ca soit le cas c'est à toi de coder ca

    sinon pour le fun il y a des choses beaucoup plus simples que ton projet, si tu n'es pas développeur tu vas galérer sur beaucoup d'étapes (mais si tu as envie de te former ca reste faisable ^^)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Salut Paul63 et merci de votre aide.

    SQL server est déja installé chez moi donc pas de souci à ce niveau et en ce qui concerne la connection, je connais aussi mais ce qui me pose véritablement problème, c'est comment attacher cette base de données vide à ce serveur SQL ? (En considérant que SQL server installé soit un prérequis pour installer le programme)

    Il faudra aussi que le server SQL porte un nom bien spécique connu de mon programme ou alors lister les noms de server présents sur le réseau...

    ???

    Encore merci
    [Il était une fois Delphi ....]


  6. #6
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Auto-réponse :

    peut-être en exécutant un script qui se chargera de la création de la base de données vide sur le server sql. Possible ?
    [Il était une fois Delphi ....]


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

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    pour la base sur les nouveaux serveurs, 2 possibilités
    soit attacher une base, soit créer une base

    une base sql server c'est 2 fichiers minimum (.mdf + .ldf)
    depuis sql server tu peux faire clic droit / détacher, ca libère les fichiers, que tu peux copier, mettre en ressources dans un exe et donc rattacher aux nouveaux sql server (sp_attach quelque chose)
    sinon autre possibilité, faire un backup (.bak) via backup database et que tu peux "rattacher" via restore database

    sinon quand ta base est finie tu peux faire clic droit / générer des scripts et obtenir un script qui va créer la base (un long script ^^ qui commence par CREATE DATABASE)
    il est possible d'y inclure les données des tables, enfin c'est plein de cases à cocher et on a souvent peur d'en oublier

    dans les 2 cas le résultat sera le même, une base avec un nom standard et un schéma / contenu standard, à toi de choisir
    (as tu déjà réfléchit au système de mise à jour de la base de données ? )


    après qu'sql server ait un nom spécifique est un bon départ, mais n'empeche qu'il faudra le retrouver sur le réseau avant
    pour ca il y a SQL Server Browser, c'est un service de réponse aux détections, par défaut il doit etre installé (vérifie sur ton install)
    ce service écoute sur le port 1434 UDP si je ne me trompes pas, et donc si tu broadcast un octet (peut etre un précis) tu auras des réponses des sql server présents sur le réseau (dont la machine exécute sql server browser, et si les paquets udp ne se sont pas perdus)
    tu auras des infos sur les instances comme le nom
    après sinon faire une boucle sur la plage d'adresse ip où se trouve l'exe pour faire du brute tentative de connexion

    par contre je ne m'appelle pas paul
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  8. #8
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Oups...pardon POL

    Merci pour toutes ces précisions.
    Je vais essayer d'avancer et je verrai bien...

    as tu déjà réfléchit au système de mise à jour de la base de données ?
    Que veux-tu dire par là ?

    Ce sont les postes clients qui feront les mises à jour et autres suppressions et ajouts.

    @+
    [Il était une fois Delphi ....]


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

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    une application ca vit dans le temps (corrections de bugs, ajouts de nouvelles fonctionnalités ...)
    donc autant réfléchir au début comment on va gérer ca, pour les programmes c'est simple, on remplace les fichiers, pour une base de données si tu dois ajouter des tables ou des colonnes c'est un peu moins simple
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  10. #10
    Membre averti Avatar de zemeilleurofgreg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 515
    Points : 346
    Points
    346
    Par défaut
    Ahhh....ok je n'avais pas compris ou tu voulais en venir

    Même si je n'en suis pas encore là, il est vrai qu'il vaut mieux penser à la chose...

    Je suppose que les modifications apportées à la structure de la base de données peuvent être mises à jour via un script !?

    En tout cas, merci pour ton aide et ton intérêt :-)
    [Il était une fois Delphi ....]


Discussions similaires

  1. application access sur base sql server
    Par souma dans le forum Access
    Réponses: 1
    Dernier message: 05/05/2006, 09h11
  2. [Développement] Application multi user
    Par Vesta dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 25/04/2006, 22h52
  3. Application pour gérer bases SQL Server
    Par devdev dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/01/2006, 20h30
  4. Création d'user sous SQL Server
    Par nnn2050 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/12/2005, 16h26
  5. UPDATE multi-tables sous SQL Server
    Par Cybernet dans le forum Langage SQL
    Réponses: 8
    Dernier message: 25/03/2004, 15h34

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