Quel est le minimum d'encombrement client requis pour connecter le C# pour une base de données Oracle?
J'ai réussi à connecter à une base de données Oracle (10g) à partir de C# (Visual Studio 2008), en téléchargeant et en installant le client, les outils d'administration et de Visual Studio 2008 sur mon ordinateur portable.
L'empreinte d'installation du Client Oracle outils a été plus de 200 mo, et d'assez longue haleine.
Personne ne sait ce que le minimum viable empreinte est? J'espère que c'est une DLL unique et un registre de commande, mais j'ai le sentiment d'avoir besoin d'installer un oracle de la maison, et de définir les différentes variables d'environnement.
Je suis de l'utilisation d'Oracle.DataAccess dans mon code.
- Oracle débutant, il a été un cauchemar pour moi aussi la recherche et l'installation de tous les composants et bibliothèques dont j'avais besoin. Je ne comprends pas, comment Oracle ne pouvait pas fournir de tels "médiocre" soutien pour .NET développeurs...
- Merci de revenir sur cette question. Votre réponse stackoverflow.com/a/26469797/6910 semble être la plus petite empreinte jusqu'à présent.
- Ne vous sentez pas mal, Oracle fournit médiocre logiciel pour tous les développeurs et les clients.
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin d'un Oracle Client pour se connecter à une base de données Oracle. Le plus simple est d'installer le Oracle Data Access Components.
De minimiser l'empreinte, je suggère ce qui suit :
sales-server:1521/sales.us.acme.com
.Cela revient à environ 19 mo (v10).
Si vous ne vous souciez pas de partager ce dossier entre plusieurs applications, une alternative serait d'expédier le ci-dessus mentionné Dll avec votre demande de fichiers binaires et de sauter le CHEMIN de l'étape.
Si vous devez absolument utiliser le fournisseur Oracle (Oracle.DataAccess), vous aurez besoin de :
Remarque que je n'ai pas testé cette dernière configuration...
System.Data.OracleClient
est deprecated pour les âges, vous ne devriez pas utiliser plus.À partir de 2014, l'OPD.NET Géré Pilote est la plus petite empreinte.
Voici un code d'utilisation de la comparaison à la non-géré versions précédentes (obsolète) réponses proposées:
http://docs.oracle.com/cd/E51173_01/win.122/e17732/intro005.htm#ODPNT148
Vous aurez besoin de télécharger ces dll et de référence
Oracle.ManagedDataAccess.dll
dans votre projet:Télécharger le ODP.NET Géré Pilote Xcopy seule version
Voici un exemple typique d'impression de pied vous aurez besoin pour emballer avec votre communiqué de presse:
Oracle.ManagedDataAccess.dll
Oracle.ManagedDataAccessDTC.dll
tous ensemble, un énorme 6.4 MO pour .Net 4.0.
Oracle.ManagedDataAccess.dll
via NuGet ainsi.- Je utiliser la méthode proposée par Pandicus ci-dessus, sur Windows XP, à l'aide de l'ODAC 11.2.0.2.1. Les étapes sont comme suit:
using Oracle.DataAccess.Client;
de votre code, et maintenant vous pouvez utiliser des types commeOracleConnection
,OracleCommand
etOracleDataReader
pour accéder à une base de données Oracle. Voir la de documentation de classe pour plus de détails. Il n'est pas nécessaire d'utiliser le tnsnames.ora fichier de configuration, seul le chaîne de connexion doivent être réglées correctement.De cette façon, vous permet de vous connecter avec ODP.net à l'aide de 5 fichiers transmissibles de l'oracle:
Chris entrée de blog: l'Utilisation des nouvelles ODP.Net pour accéder à Oracle en C# avec déploiement simple
Edit: Dans le cas où le blog tous les descend, voici un bref résumé...
DevArt http://www.devart.com/, anciennement CoreLab (crlab.com fournit un pur-C# client Oracle. C'est une dll unique, et il fonctionne très bien.
Voici une mise à jour pour Oracle 11.2.0.4.0. J'ai eu du succès avec la procédure suivante sur Windows 7 à l'aide de
System.Data.OracleClient
.1. Télécharger Instant Client Forfait de Base Lite: Windows 32 Bits ou 64-Bit.
2. Copiez les fichiers suivants à un emplacement dans votre chemin d'accès au système:
32 Bits
64 Bits
3. Construire une chaîne de connexion qui omet le besoin de tnsnames.ora.
(Voir les exemples dans le programme de test ci-dessous).
4. Exécuter cette minime programme C# pour tester votre installation:
Dernier conseil: Si vous rencontrez l'erreur "du Système.Les données.OracleClient nécessite le logiciel client Oracle version 8.1.7", voir cette question.
ODAC xcopy va vous sortir avec environ 45 MO.
http://www.oracle.com/technology/software/tech/windows/odpnet/index.html
J'ai trouvé ce post sur l'Oracle forum très utile ainsi:
Comment installer le Client Oracle Instant avec Visual Studio
Remarque: l'ADO.NET l'équipe est autodérision Système.Les données.OracleClient donc, pour les futurs projets, vous devez utiliser ODP.NET
Reproduction: