Application multiposte avec SQL Server Express

Yoshifumi Messages postés 7 Date d'inscription mardi 4 mai 2010 Statut Membre Dernière intervention 29 septembre 2010 - 19 mai 2010 à 15:30
imothepe_33 Messages postés 168 Date d'inscription mardi 27 juillet 2004 Statut Membre Dernière intervention 28 novembre 2012 - 21 mai 2010 à 11:49
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

imothepe_33 Messages postés 168 Date d'inscription mardi 27 juillet 2004 Statut Membre Dernière intervention 28 novembre 2012 7
19 mai 2010 à 18:10
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 !
0
Yoshifumi Messages postés 7 Date d'inscription mardi 4 mai 2010 Statut Membre Dernière intervention 29 septembre 2010
19 mai 2010 à 20:05
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).
0
cs_saramar Messages postés 17 Date d'inscription samedi 10 avril 2004 Statut Membre Dernière intervention 17 juin 2010
21 mai 2010 à 11:35
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.
0
imothepe_33 Messages postés 168 Date d'inscription mardi 27 juillet 2004 Statut Membre Dernière intervention 28 novembre 2012 7
21 mai 2010 à 11:49
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 !
0
Rejoignez-nous