web-dev-qa-db-fra.com

c'est l'erreur ORA-12154: TNS: impossible de résoudre l'identifiant de connexion spécifié?

J'ai ce code:

OracleConnection con = new OracleConnection("data source=localhost;user id=fastecit;password=fastecit"); 
con.Open(); string sql="Select userId from tblusers";    
OracleCommand cmd = new OracleCommand(sql, con);
OracleDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{ messageBox.Show(dr[0].Tostring()); } 

Même code dans les deux projets,

dans project1 "WinForm" fonctionne correctement

dans project2 "Compléments Excel 2007" L'erreur suivante apparaît:

ORA-12154: TNS: impossible de résoudre l'identificateur de connexion spécifié

J'utilise C # .net 2010, Office 2007, Windows8, Oracle 10g.

Lors de la préparation d'une connexion manuelle à la base de données, comme indiqué dans l'image

Visual Studio, ouvrez le menu Affichage + Explorateur de serveurs.

Cliquez avec le bouton droit de la souris sur Connexion de données + Ajouter une connexion + Sélectionnez le nom du serveur de base de données Oracle: hôte local ou nom de ma machine, définissez le nom d'utilisateur et le mot de passe et cliquez sur Tester la connexion, le test ne réussit pas.enter image description here

12

ORA-12154: TNS: impossible de résoudre l'identifiant de connexion spécifié?

Dans le cas où le TNS n'est pas défini, vous pouvez également essayer celui-ci:

Si vous utilisez C#.net 2010 ou une autre version de VS et Oracle 10g express edition ou une version inférieure, et vous créez une chaîne de connexion comme celle-ci:

static string constr = @"Data Source=(DESCRIPTION=
    (ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host=yourhostname )(PORT=1521)))
    (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XE)));
    User Id=system ;Password=yourpasswrd"; 

Après cela, vous obtenez un message d'erreur ORA-12154: TNS:could not resolve the connect identifier specified puis vous devez d'abord redémarrer votre système et exécuter votre projet.

Et si vos fenêtres sont 64 bits, vous installez Oracle 11g 32 bits et si vous installez 11g 64 bits, vous installez Oracle 11g Oracle Data Access Components (ODAC) avec Oracle Developer Tools pour Visual Studio version 11.2.0.1.2 ou ultérieure à partir d'OTN et vérifiez-le dans Oracle Universal Installer Veuillez vous assurer que les éléments suivants sont cochés:

Oracle Data Provider for .NET 2.0

Oracle Providers for ASP.NET

Oracle Developer Tools for Visual Studio

Oracle Instant Client 

Et redémarrez votre vs puis exécutez votre projet .... REMARQUE: - REDÉMARRAGE DU SYSTÈME IS nécessaire pour RÉSOUDRE CE TYPES D'ERREURS .......

26
LALBABU

La base de données doit avoir un nom (exemple DB1), essayez celui-ci:

OracleConnection con = new OracleConnection("data source=DB1;user id=fastecit;password=fastecit"); 

Dans le cas où le TNS n'est pas défini, vous pouvez également essayer celui-ci:

OracleConnection con = new OracleConnection("Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host=localhost)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=DB1)));
User Id=fastecit;Password=fastecit"); 
6