AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Host und IP bei ADO Oracle
Thema durchsuchen
Ansicht
Themen-Optionen

Host und IP bei ADO Oracle

Ein Thema von =pascal= · begonnen am 16. Apr 2008 · letzter Beitrag vom 16. Apr 2008
Antwort Antwort
Seite 1 von 2  1 2      
=pascal=

Registriert seit: 16. Apr 2008
6 Beiträge
 
#1

Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 08:07
Datenbank: Oracle • Version: 10g • Zugriff über: ADO
Hallo,

Erst mal ein Hallo, bin noch neu hier, und auch schon ein Problem

Ich bin nun schon lange auf der Suche nach einer Beschreibung, wo man das Port und die IP oder Host bei einer ADO Verbindung für Oracle deffiniert.

Mein login sieht zur Zeit wie folgt aus, und es funktioniert auch.

Delphi-Quellcode:
 Memo2.Lines.Append(DateTimeToStr(Time)+' - Start loggin ...');

 IF Datamodule1.ADOConnection.Connected = True THEN
  BEGIN
   Datamodule1.SQL.Close;
   Datamodule1.ADOConnection.Connected := False;
   Datamodule1.SQL.ConnectionString := '';
  END;
 MyConnecting := 'Provider='+Datasource+'; '+
                 'Persist Security Info=False; '+
                 'User ID='+SetUser+'; '+
                 'Password='+PASSWORD_DECODE(SetPass)+'; '+
                 'Data Source='+db;

 Datamodule1.ADOConnection.ConnectionString := MyConnecting;
 Datamodule1.SQL.ConnectionString := MyConnecting;
 Datamodule1.ADOConnection.Connected := True;
Gebe ich die IP und port beim "Data Source" an? Aber wie, habe schon entliche varianten versucht.

Danke für den TIPP
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 08:55
Du solltest dir auf jedenfalls einen ADO/OLE DB-Provider von Oracle direkt besorgen. Der von MS mitgelieferte ist Schrott (oder sanft ausgedrückt: Er ist eine Machbarkeitsstudie)!

Noch besser ist es direkte Zugriffskomponenten wie z.B. von Core Labs zu nehmen. Damit sind die Einricht bzw. Verteilungs bzw. Versionsprobleme auf ein minmum reduziert. Man braucht nur noch eine Oracle-Version bei der die Fehler nicht so eklatant sind.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
=pascal=

Registriert seit: 16. Apr 2008
6 Beiträge
 
#3

Re: Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 09:54
Sorry, habe vergessen den Provider anzugeben.

Also ich denke ich benutze ADO/OLE oder nicht?

Provider: OraOLEDB.Oracle.1
  Mit Zitat antworten Zitat
Benutzerbild von rwachtel
rwachtel

Registriert seit: 26. Aug 2004
Ort: Köln
530 Beiträge
 
RAD-Studio 2010 Pro
 
#4

Re: Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 11:06
Host und IP kannst Du so nicht angeben. DataSource ist der DSN des entsprechenden Servers wie es beim installierten Oracle Client in der tnsnames.ora angegeben ist.

http://www.connectionstrings.com/?carrier=oracle
Robert Wachtel
  Mit Zitat antworten Zitat
Benutzerbild von peschai
peschai

Registriert seit: 15. Feb 2004
Ort: Göppingen
270 Beiträge
 
Delphi XE5 Professional
 
#5

Re: Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 11:28
Hallo
Delphi-Quellcode:
          adoSrcConnection.ConnectionString := 'Provider=OraOLEDB.Oracle'
                                               +';Data Source='+cbxSrcDatabase.Text
                                               +';User Id='+ediSrcUsername.Text
                                               +';Password='+ediSrcPassword.Text
                                               +';';
IP und Port und entfernter DBName(Service) werden in der TNSNAMES.ORA deiner lokalen OracleClient Installation hinterlegt. Mit dem darin definierten TNS-Bezeichner arbeitest du dann innerhalb Delphi.
Delphi-Quellcode:
# TNSNAMES.ORA Network Configuration File: C:\oracle\ora92\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
blabladatenbank =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = entfernterdatenbankname)
    )
  )
Wenn du z.b. mit dem TNSNamen blabladatenbank die Verbindung definiert hast, so kannst du mit folgendem die Oraclestrecke testen in einer Kommandozeile(das gute alte DOS ....... :
tnsping blabladatenbank Bei Erfolg erhälst du eine Zeitangabe in ms.
Dann sollte die Verbindung wie oben funktionieren...
cbxSrcDatabase.Text:='blabladatenbank';
Peter Schaible
  Mit Zitat antworten Zitat
=pascal=

Registriert seit: 16. Apr 2008
6 Beiträge
 
#6

Re: Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 11:46
Besten Dank für euro Antworten.

Dann ist es also nicht möglich die TNSNAMES.ORA zu übersteuern? Ich denke daran das jemand einen quatsch in der tnsnames.ora deffiniert hat und nun das Programm starten möchte, dass die einstellungen des Programm diese in tns übersteuert.

Ich möchte nur sicherstellen das die Software immer läuft, denn auf jenigem PC arbeiten mehrere Personen und da kann es schon mal vorkommen das da jemand was fummelt.
  Mit Zitat antworten Zitat
Benutzerbild von rwachtel
rwachtel

Registriert seit: 26. Aug 2004
Ort: Köln
530 Beiträge
 
RAD-Studio 2010 Pro
 
#7

Re: Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 11:52
Also erstmal bieten moderne Betriebssysteme eine entsprechende Rechteverwaltung, so dass nicht jeder Nutzer einfach so die Einstellungen an solch neuralgischen Punkten ändern kann.

Du kannst natürlich auch den sogenannten TNS-less connection string ausprobieren. Den findest Du bei meinem o.a. Link.

Ansonsten hilft Dir nur noch eine alternative Zugriffskomponente, wie z.B. die schon angesprochenen Oracle Data Access Components von CrLab http://crlab.com/odac/ Diese bieten einen Direktzugriffsmodus, so dass der Oracle Client noch nichtmal installiert sein muss.
Robert Wachtel
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

Re: Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 12:12
Kleiner Auszug aus deinem Code:
Delphi-Quellcode:
Datamodule1.ADOConnection.ConnectionString := MyConnecting;
Datamodule1.SQL.ConnectionString := MyConnecting; // <====
Die 2. Zeile ist natürlich sehr ungeschickt, da die Query, die bei dir "SQL" heisst ja schon mit "ADOConnection" in Verbindung steht.
Wenn man jeder ADOQuery einen ConnectionString zuweist, ist das fast schon die Garantie für Probleme, da so mehrere Connections anstatt nur einer aufgebaut werden.
Andreas
  Mit Zitat antworten Zitat
=pascal=

Registriert seit: 16. Apr 2008
6 Beiträge
 
#9

Re: Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 13:12
Besten Dank für deinen Hinweis. Habe schon immer gewusst, dass ich noch einige Fehler im Code habe.
  Mit Zitat antworten Zitat
=pascal=

Registriert seit: 16. Apr 2008
6 Beiträge
 
#10

Re: Host und IP bei ADO Oracle

  Alt 16. Apr 2008, 13:16
Zitat von rwachtel:
Also erstmal bieten moderne Betriebssysteme eine entsprechende Rechteverwaltung, so dass nicht jeder Nutzer einfach so die Einstellungen an solch neuralgischen Punkten ändern kann.
Du hast Recht, aber irgendwie gelingt es diesen sogenannten Personen immer wieder. Da was zu ändern. Ich werde mir mal das Produkt anschauen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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:54 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