AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken ORA-12154: TNS: Angegebener Connect-Identifier konnte nicht aufgelöst werden
Thema durchsuchen
Ansicht
Themen-Optionen

ORA-12154: TNS: Angegebener Connect-Identifier konnte nicht aufgelöst werden

Ein Thema von Glühwürmchen · begonnen am 31. Jan 2011 · letzter Beitrag vom 2. Feb 2011
Antwort Antwort
Benutzerbild von Glühwürmchen
Glühwürmchen

Registriert seit: 31. Okt 2003
Ort: Pfinztal
156 Beiträge
 
Delphi 2010 Professional
 
#1

ORA-12154: TNS: Angegebener Connect-Identifier konnte nicht aufgelöst werden

  Alt 31. Jan 2011, 12:01
Datenbank: Oracle • Version: 10g • Zugriff über: ADOConnection
Hallo Experten,

ich habe eine Delphi IntraWeb-Anwendung die auf eine Oracle-DB (XE) zugreifen soll.

Im DatenModul liegt eine ADOConnectionXE (=TADOConnection), deren ConnectionString folgendermaßen aussieht:
Zitat:
Provider=OraOLEDB.Oracle.1;Password=admin;Persist Security Info=True;User ID=System;Data Source=XE
Im ONCREATE-Event des Datenmoduls wird
Zitat:
ADOConnectionXE.Connected := TRUE;
aufgerufen.

Dabei kommt es zu der Fehlermeldung:
Zitat:
ORA-12154: TNS: Angegebener Connect-Identifier konnte nicht aufgelöst werden
Interessanterweise funktioniert der Zugriff aber zur Entwicklungszeit über ein Häkchen bei "ADOConnectionXE.Connected" problemlos.

Da sämtliche Hinweise zu diesem Thema, die man im Internet findet, behaupten, der Fehler läge in der "TNSNAMES.ORA", habe ich mein System (= alle Verzeichnisse in allen Laufwerken) nach dieser Datei durchsucht. Ich fand zwei. Beide sind identisch und korrekt.
Der TNSPING funktioniert.
Der gleiche ConnectionString in einer anderen Anwendung funktioniert auch.

Was könnte das sein?
Gruß Glühwürmchen
<><
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#2

AW: ORA-12154: TNS: Angegebener Connect-Identifier konnte nicht aufgelöst werden

  Alt 31. Jan 2011, 12:09
In dieser TNSNAMES.ORA steht sowas wie ein DNS-Einträg, über welcher Oracle einen Datenbank-Namen in eine IP umwandeln kann. Bei mir liegt die benutzte Datei unter:
Code:
E:\oracle\product\11.1.0\client_1\network\admin
und hat diesen Inhalt:
Code:
DATABASE_NAME =
 (DESCRIPTION =
   (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.163.128)(PORT = 1521))
   )
 (CONNECT_DATA =
   (SERVICE_NAME = DATABASE_NAME)
 )
)
Die IP-Adresse zeigt auf eine VMware-Maschine, der ich die Datenbank aufgezwungen habe. Musste leider den wirklichen Namen der DB mit DATABASE_NAME ersetzen. Vielleicht hilft das ganze ja.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Benutzerbild von Glühwürmchen
Glühwürmchen

Registriert seit: 31. Okt 2003
Ort: Pfinztal
156 Beiträge
 
Delphi 2010 Professional
 
#3

AW: ORA-12154: TNS: Angegebener Connect-Identifier konnte nicht aufgelöst werden

  Alt 31. Jan 2011, 12:25
Nein, es hilft nicht wirklich weiter.
Die verwendete DB liegt auf dem gleichen Rechner.

Hier der entsprechende Eintrag der tnsnames.ora:
Code:
XE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = inspiron-9400)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )
Aber wie bereits erwähnt:
- Zur Entwicklungszeit gelingt der Zugriff.
- Eine andere Anwendung kommt über die selbe Tnsnames.ora ebenfalls zum Ziel
???
Gruß Glühwürmchen
<><
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#4

AW: ORA-12154: TNS: Angegebener Connect-Identifier konnte nicht aufgelöst werden

  Alt 31. Jan 2011, 13:36
Neulich gab's hier mal den Fall, dass ein Antivirenprogramm dafür verantwortlich war.
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von Glühwürmchen
Glühwürmchen

Registriert seit: 31. Okt 2003
Ort: Pfinztal
156 Beiträge
 
Delphi 2010 Professional
 
#5

AW: ORA-12154: TNS: Angegebener Connect-Identifier konnte nicht aufgelöst werden

  Alt 1. Feb 2011, 17:42
Nach ca. 20 Stunden Fehlersuche habe ich ihn endlich dingfest gemacht!!

Das Datei-Verzeichnis, in dem die fertige, fehlerproduzierende Exe liegt unterscheidet sich von dem Datei-Verzeichnis, in dem die fertige, nicht fehlerproduzierende Exe liegt durch zwei runde Klammern im Namen!

Man entferne die Klammer und schon geht das.



Edit: Ich habe es noch etwas genauer eingegrenzt:
Die runde "Klammer auf", ist kein Problem. Nur die runde "Klammer zu" stört den Connect! Es tut auch nichts zur Sache, ob die Klammer am Ende des Pfades, oder irgendwo dazwischen liegt.

Das "Version 3 (Webapplikation)" geht nicht,
das "Version 3 (Webapplikation" geht.
Gruß Glühwürmchen
<><

Geändert von Glühwürmchen ( 2. Feb 2011 um 10:17 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Glühwürmchen
Glühwürmchen

Registriert seit: 31. Okt 2003
Ort: Pfinztal
156 Beiträge
 
Delphi 2010 Professional
 
#6

AW: ORA-12154: TNS: Angegebener Connect-Identifier konnte nicht aufgelöst werden

  Alt 2. Feb 2011, 10:15
Noch ein Nachtrag zum Thema:
Bei Windows XP und bei Vista tritt dieser Fehler auf.
Bie Windows Server 2008 tritt er nicht auf.

Nicht getestet:
- Windows 7
- Windows Server 2003
Gruß Glühwürmchen
<><
  Mit Zitat antworten Zitat
Alt 3. Dez 2017, 00:18     Erstellt von Yachtook
Dieser Beitrag wurde von fkerber gelöscht. - Grund: Verdacht auf SPAM und den damit verbundenen verschwenderischen Umgang von wertvollen Bits und Bytes
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz