Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
871 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  C#.NET et les DB (ADO,ODBC,OLE) ???

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

C#.NET et les DB (ADO,ODBC,OLE) ???

n°1691768
kalios
Prout !
Posté le 25-02-2008 à 09:51:23  profilanswer
 

Bonjour,  
 
J'ai une question en rapport avec les connexions aux bases de données. Je cherche à faire une petite application de test sous .NET et j'ai du mal à évaluer les différences entre toutes les méthodes de connexions offertes...
 
J'ai remarqué que VisualStudio intègre directement une interface avec SqlServer. Cependant je n'ai pas compris ce rapport avec les fichiers. Jusqu'ici une DB je pensais qu'une DB peut-être soit un fichier unique utilisé par un programme soit un ensemble de données gérées par un service lequel fait l'interface avec la couche applicative.  
 
Pour l'instant j'aimerai orienter mon application sur MySQL parce que j'ai pas mal d'expérience avec et le logiciel dBDesigner est vraiment bien foutu.  
 
J'ai remarqué que je peux soit attaquer ma BD directement, soit je peux passer par ODBC. Il me semble que dans un cas je dois utiliser:  
 
SqlConnection
 
et dans l'autre:

OdbcConnection

 
J'ai également découvert l'existence de ALDO et sa méthode d'accès:

ALDODB.Connection

 
Bref... Je peux résumer mon problème en trois questions:
 
Quelle est la meilleure solution à utiliser?  
Quelles sont les avantages de SQLServeur par rapport à MySQL ou MSAccess?
Est-ce que l'utilisation d'ODBC est intéressante?
 
Un point qui m'intéresse également c'est de pouvoir être en mesure de porter mon application avec Mono.
 
Je suis conscient que mon post est un peu décousu mais je dois admettre que je nage un peu...
 


---------------
.:coin:.
mood
Publicité
Posté le 25-02-2008 à 09:51:23  profilanswer
 

n°1691858
moi23372
Posté le 25-02-2008 à 12:49:21  profilanswer
 

SqlConnection c'est pour SQL SERVER
OracleConnection (via la DDL du client ORACLE) c'est pour ORACLE
 
OdbcConnection, franchement, ce n'est plus utilisé et cela utilise donc une connection ODBC de Windows
 
OledbConnection, tu passes via les pilotes OLEDB pour te connecter à la base de données. Il s'agit d'une lib relativement générique qui fonctionne avec presque tous les SGBD. Il n'y que les trucs vraiment spécifique à l'SGBD qui ne fonctionne pas (exemple les BLOB dans ORACLE).  
 
ALDODB jamais entendu parlé.  
Perso je te conseille les SqlConnection pour SQLServer ou les OracleConnection pour Oracle. Sinon les OLEDB son aussi simple à utiliser aussi.

n°1692291
kalios
Prout !
Posté le 25-02-2008 à 18:49:01  profilanswer
 

Ok merci, je me suis rendu compte au passage qu'avec OdbcConnection y'a des problèmes avec les paramètres (Parameters.Add/Addwithvalue).  
 
Je vais donc partir sur SqlConnection.  
 
Cependant un truc qui m'ennuie. Si je réalise un soft qui attaque une DB, l'utilisateur va vouloir choisir et configurer sa DB. Bon nombre de softs utilisent une DB propriétaire ou un binaire inexploitable. Le principe d'ODBC est assez sexy dans le sens ou il y a abstraction complete du type de DB qui est derrière. Si j'utilise SqlConnection je vais être contrain d'utiliser Sql à moins d'ajouter toutes les possibilités dans mon code!
 
Est-ce que SQLServer est installé par défaut sur toutes les plateformes Windows?
 
Merci d'avance....

n°1692378
moi23372
Posté le 25-02-2008 à 21:24:01  profilanswer
 

non il n'est pas installé par défaut.  
je te recommande OLEDB plutot qu'ODBC. Il s'agit d'une couche générique au dessus de la DB qui est capable de se connecter à presque tous les SGBD sans devoir modifier le code.  

n°1692611
ixemul
Nan mais sans blague ! ⚡
Posté le 26-02-2008 à 10:24:20  profilanswer
 

SqlServer 2005 Express (celui utilisé avec VS2005) peut être déployé avec ton application via un projet Setup, et ceci en enregistrant directement ta structure de BDD (Schéma, procs stock, etc)


---------------
VA APPRENDRE ET REVIENS QUAND TU SAIS, SINON ABSTIENT TOI C'EST UN GRAND CONSEIL QUE JE TE DONNE... TU ES INCOMPÉTENT ET C'EST UNE RÉALITÉ, TU N'AS RIEN A FAIRE ICI FAUT S'Y CONNAITRE ... -Jojo1998 - RIP - http://tinyurl.com/qc47ftk
n°1695472
kalios
Prout !
Posté le 01-03-2008 à 06:13:13  profilanswer
 

Bon finalement voici l'état des choses...
 
J'ai finalement trouvé le moyen de m'affranchir du problem "Quelle BD?" en utilisant les "factories" d'ADO.NET. Ca me permet d'être assez souple et d'avoir le même code indépendemment que je travaille avec OleDB, ODBC, MSSQL, Oracle, MySQL ou SQLite.  
 
Pour mon application j'ai finalement opté pour SQLite. Tout est dans un fichier, c'est open-source, c'est portable et c'est largement suffisant pour mon application.  
 
Merci de votre aide...
 


---------------
.:coin:.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  C#.NET et les DB (ADO,ODBC,OLE) ???

 

Sujets relatifs
MySQL > ODBC > AccessLire l'entrée ligne ? ( VB.Net )
[ASP.NET/C#]On faisait comment avant la MasterPage ?[C# .NET] Probleme client server multithread
[VB.NET] DatagridView et Access[ASP.NET] des modules (scripts) ASP.NET gratuits (comme PHP) ?
Communication entre VB (ADO.net) et Access.[C# et ASP.NET] Dimension d'un Datagrid
Lenteur .Net Remoting[ASP.NET] RadioButton qui perd sa SelectedValue
Plus de sujets relatifs à : C#.NET et les DB (ADO,ODBC,OLE) ???


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR