Application multiposte avec SQL Server Express

Signaler
Messages postés
7
Date d'inscription
mardi 4 mai 2010
Statut
Membre
Dernière intervention
29 septembre 2010
-
imothepe_33
Messages postés
168
Date d'inscription
mardi 27 juillet 2004
Statut
Membre
Dernière intervention
28 novembre 2012
-
Bonjour à tous,

Je développe actuellement une application en C# avec Visual Studio 2008 (débutant). Ce programme utilise une base de données SQL Server Express 2005.
J'aimerais "déployer" mon appli sur plusieurs postes, mais je n'y arrive pas.
Dans Visual Studio et sur mon PC, tout fonctionne bien. J'arrive à effectuer des requêtes sur mes tables sans problèmes.

Sur d'autres PC, j'obtiens un message d'erreur du type : System.Data.SqlClient.SqlException; Impossible d'ouvrir la base de données par défaut de l'utilisateur, Échec de la connexion. Échec de l'ouverture de session de l'utilisateur 'PC\Administrateur'.
etc...

Ma question est : sur d'autres postes, que dois-je faire pour utiliser mon application, en plus d'installer SQL Server Express ?

NB : j'utilise la connexionString suivante : "server=(local)\\SQLEXPRESS;database=Database1;Integrated Security=SSPI;User Instance=true";
NB2 : je n'ai pas ce problème avec SQL Server CE 3.5, mais j'aimerais tout de même utiliser la version express

Merci de votre aide

4 réponses

Messages postés
168
Date d'inscription
mardi 27 juillet 2004
Statut
Membre
Dernière intervention
28 novembre 2012
5
Salut.
1/ Tout d'abord, tu dois vérifier si tu as bien configuré ton serveur. L'as tu rendu accessible à travers le réseau local? Si oui alors c'est un pas. Sinon tu dois le faire en allant dans le menu "SQL Server Surface Area Configuration" -> "Surface configuration for Services and Connections" et choisissant la case à cocher "Local and remote connections".

2/ Une fois cette étape passée, tu ouvres l'outils d'administration de SQL SERVER "SQL Server Management Studio Express" et dans l'explorateur d'objets dans la section "Sécurité", tu créés un nouvel utilisateur Nommé "Invité" (juste après tu redémarres ta machine)

3/ L'autre soucis c'est ta chaine de connection que tu installes chez tes clients qui doit se présenter sous cette forme "server=IP_Server\\SQLEXPRESS;database=Database1;Integrated Security=SSPI;User Instance=true" -> A la place de IP_Server, tu dois mettre l'adresse IP ou le nom de ta machine qui abrite ta base de données.

Une fois tout ceci fait, en principe, tes postes clients devraient accéder à la base de données. Merci.



Only the strong survive !
Messages postés
7
Date d'inscription
mardi 4 mai 2010
Statut
Membre
Dernière intervention
29 septembre 2010

Merci pour ra réponse !

J'ai cependant oublié de préciser quelque chose. En fait, mon application devrait (si possible)s'exécuter uniquement en local sur la machine (pas de réseau entre les postes).
Messages postés
17
Date d'inscription
samedi 10 avril 2004
Statut
Membre
Dernière intervention
17 juin 2010

ta connection string devrait ressembler a ca:
"server=127.0.0.1\\SQLEXPRESS;database=Database1;Integrated Security=SSPI;User Instance=true";

sur tout les PC.
Messages postés
168
Date d'inscription
mardi 27 juillet 2004
Statut
Membre
Dernière intervention
28 novembre 2012
5
Salut. En y revenant sur la question. Pourquoi tu veux installer sur chaque machine SQL SERVER 2005 Express? Si tu développes une appli destinée à fonctionner en réseau, c'est la que les bases de données comme SQL SERVER (Oracle, MySQL etc...) inerviennent. Mais dans ton cas comme c'est une application en monoposte, essai plutot d'utiliser une base de données comme ACCESS ou SQLITE. C'est légé et optimisé pour ce genres d'applications.

Merci.

Only the strong survive !