Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : logique de connexion à une bdd [ Archives / Base de données ] (georgeduke)

mercredi 5 octobre 2005 à 21:48:02 | logique de connexion à une bdd

georgeduke

Salut les gens !!

J'ai appris grâce à ce site notamment comme se connecter en c# à une bdd et à exécuter des requêtes.

Mais j'ai une question existentielle... Dans le développement d'une appli liée à une base de données, est-ce qu'on laisse ouverte la connection à la base de données pendant toute la durée de l'utilisation du logiciel ou doit-on fermer cette connection après chaque requette et se reconnecter par la suite si on doit faire une autre requette et ainsi de suite ??..

Désolé pour cette question de débutant, mais j'ai soif d'apprendre !!!

Merci d'avance

mercredi 5 octobre 2005 à 22:15:53 | Re : logique de connexion à une bdd

MorpionMx

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Disons que si tu enchaines les requetes, tu fermes a la fin de l'enchainement. Mais tu ne laisses pas la connexion ouverte de l'ouverture a la fermeture de l'application.
Une des raisons : le nombre de licences. Quand tu achetes un sgbd, on peut te vend un nombre de licences, ce qui equivaut au nombre de connexions simultanées a la base. Si les applis ne se deconnectent pas, y'a des gens qui parfois ne pourraient plus travailler

Mx

mercredi 5 octobre 2005 à 22:29:03 | Re : logique de connexion à une bdd

georgeduke

Ah oui d'accord je n'avais pas pensé à cette histoire de nombre de licences (merci !) Je peux te demander si cette logique dans cet exemple te parait bonne... :

...
******Connexion à la base***************
ici nous sommes sur la fenêtre du listing des clients -
REQUETTES POUR LISTER LES CLIENTS
******Fermeture de la connexion à la base***

ici on double clique sur le nom d'un client -
ici affiche l'écran du détail d'un client -
******Connexion à la base***************
REQUETTES POUR REMPLIR L'ECRAN DU DETAIL D'UN CLIENT
******Fermeture de la connexion à la base***

etc.  J'ai bon ?



mercredi 5 octobre 2005 à 22:32:12 | Re : logique de connexion à une bdd

MorpionMx

Membre Club Administrateur CodeS-SourceS
Ca me semble etre comme il faut faire.

Mx

mercredi 5 octobre 2005 à 22:41:43 | Re : logique de connexion à une bdd

georgeduke

Merci beaucoup pour ton aide !!
J'espère que ette méthode de connexions/déconnexions fréquentes avec une bdd ne sera pas un problème !!

mercredi 5 octobre 2005 à 22:59:01 | Re : logique de connexion à une bdd

MorpionMx

Membre Club Administrateur CodeS-SourceS
Ne t'inquiete pas pour ca. Le mécanisme est fait pour, tant du coté du .Net que du coté du provider (comme avec le pooling de connexions par exemple)

Mx

jeudi 6 octobre 2005 à 08:43:53 | Re : logique de connexion à une bdd

taoetc

Le principe de licence ne devrait pas être prise en compte.  En effet, cela veut dire pour moi des ralentissements importants si le nombre de licences n'équivaut pas aux nombres d'utilisateurs simultané. Ce qui veut dire : a il y a quelqu'un qui travaille, j'attend mon tour. On dirait des licences installshield ca.

Apres, tous les sgbds, enfin ceux que je connais ne limite pas le nombre de connexion simultanée en fonction d'une licence.

Apres, le fonctionnement connexion deconnexion a chaque requete ou groupe de requete ,pourquoi pas. J'ai déjà fait ca, cela fonctionne correctement du moment que tu enchaines pas trop de requete de suite en connexion deconnexion.

Fait attention  que la connexion ne démarre pas un serveur de données et que la déconnexion ferme ce serveur, sinon, ca va bien planter.

Berf, pas sur qu'il y ai une meilleure solution.
C'est en fonction de l'appli  :
       un utilisateur  une bdd   >>>> une connexion et une fermeture pour l'appli
       plusieurs utilisateur une bdd >>> une connexion et une fermeture par groupe de requete  
Cela semble le mieux dans l'absolu, mais c'est aussi en fonction du SGBD 

 

In the mood for ... ba heu, for quelque chose qui est vachement bien ( oui je sais , n'importe quoi)

jeudi 6 octobre 2005 à 12:51:49 | Re : logique de connexion à une bdd

t_barbillon

Salut, je suis d'accord avec Morpion Mx, ça m'est arrivé sur une bdd oracle. Le nb de connexoion était limité à 30 ce qui posait un pb assez rapiement si on ne ferme pas les

jeudi 6 octobre 2005 à 18:55:17 | Re : logique de connexion à une bdd

georgeduke

Merci c'est vraiment génial de partager vos expériences !! J'ai donc l'impression qu'il n'y a pas de façon unique de gérer les connexions/deconnexions cela dépend de 3 facteurs :
- la politique du fournisseur SGBD en terme de licence
- le nombre d'utilisateurs de l'appli
- le volume et la fréquence de requêtes nécessaires à l'appli

Je me pose tout d'un coups ces questions car j'ai débuté en développement avec une bdd "SQLBASE" qui n'a pas de limite en connexions simultanées et au niveau du développement la connexion à la base restait toujours ouverte, cela correspondait à une "session". Ce qui posait de gros problèmes chez nos clients en wifi qui avaient des micro coupures au niveau de leur réseau car ils devaient redémarrer complètement l'appli avec moultes messages d'erreurs...

La je démarre un projet perso avec MySql, et cela change beaucoup la donne :-)



Cette discussion est classé dans : base, connexion, bdd, question, logique


Répondre à ce message

Sujets en rapport avec ce message

Datagrid+base de données [ par fryounet ] Bonjour à tous,voila je programme en C#,j'ai réalisé un DataGrid et une connexion à une base de donnée serveur,la connexion et l'affiche de la table s Connection à une BDD MSDE/Access [ par eutexis ] Salut tout le monde, je suis nouveau ici. Je commence le C# avec les web forms, et j'ai un ENORME problème : la connection à une BDD MSDE/Sql Server o connexion a une base HYPER FILE par un serveur distant [ par grandnello ] Bonjour ,Je suis en stage en entreorise et je dois connecter une base HYPER FILE WINDEV 5.5 a un serveur distant soit en PAGE ASP , soit en language W Connexion serveur [ par samsamsimo ] Bonjour, voila je programme en c#et j'aimerai savoir comment je peux faire pour me connecter a ma base de données Access sur une autre machine par OL ODBC, OleDb, ... (°_°)agheu??? + Pb connexion BD Oracle... [ par sphaxslayer ] Bonjour tout le monde...au risque de paraître stupide, je voudrais vous poser la question suivante:mais que sont ODBC et OleDb ... ? Ormis que ce sont Pb Fermeture formulaire enfant [ par Caro2005 ] J'ai un formulaire Parent qui correspond à mon menu général. Dans ce formulaire, j'ai une option qui permet d'ouvrir un formulaire enfant. Dans le lo connexion a sqlite [ par elrom91 ] Bonjour, je voudrais savoir si quelqu'un a deja reussi a se connecter a une base de données sqlite avec le client SQLiteClient.NETL'erreur genérée par Insertion de données saisies dans un fomulaire dans une base sql server , c# [ par mik67 ] Bonjour à tous , Dans le cadre d'un stage, je dois développer des applications Web. L'une d'elle consiste à créer un formulaire avec des TxtBox. Apr Csharp+BDD access [ par dev10 ] Bonjour à tous,voilà je souhaite faire une connexion entre une base access et du Csharp, je débute et j'ai cherché un peu partout mais je ne trouve pa Interface de connexion [ par bibicool ] Bonjour à tous,J'utilise CSharp depuis peu, Je développe une application permettant de se connecter à une base de donnée sécurisée par un fichier syst


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,281 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.