Einzelnen Beitrag anzeigen

Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Einige Fragen zu Delphi 8 (Datenbankanb. BDP versus ODP)

  Alt 13. Apr 2004, 13:13
Stichwörter:
BDP = Borland Data Provider
ODP = Oracle Data Provider for .net


Hallo,

ich habe hier eine Delphi 8 Architekt installiert.

Folgende Fragen sind aufgekommen:

Datenbankanbindung (BDP versus ODP)

Ich möchte eine Verbindung zu einem Oracle SQL Server aufbauen,
aber kein BDE, ADO oder so verwenden.
Von Oracle gibt es eine Schnittstelle Namens "Oracle Data Provider for .net".
Das bekomme ich auch in Delphi 8 installiert. (.net Komponenten)

Ich habe nur ein kleines Problem in der Benutzung.

Die "Borland Data Provider" Komponenten werden wie folgt verwendet:
  • 1. BdpConnection wird ein ConnectionString zugewiesen
    2. BdpCommand wird eine Connection zugewiesen (z.B. BdpConnection1)
    3. BdpCommand wird ein CommandText zugewiesen (z.B. select * from table1)
    4. BdpDataAdapter wird ein SelectCommand zugewiesen (z.B. BdpCommand1)
    5. BdpDataAdapter kann nun ein DataSet zugewiesen werden (z.B. DataSet1)
    6. BdpDataAdapter kann nun mit Active := true aktiviert werden.
    7. Nun kann z.B. ein DataGrid mit DataSet1 oder der automatisch generierten DataTable1 verbunden werden
-> Es werden Daten angezeigt.

Bei den "Oracle Data Provider for .net" Komponenten sollte das eigentlich genauso gehen
  • 1. OracleConnection wird ein ConnectionString zugewiesen
    2. OracleCommand wird eine Connection zugewiesen (z.B. OracleConnection1)
    3. OracleCommand wird ein CommandText zugewiesen (z.B. select * from table1)
    4. OracleDataAdapter wird ein SelectCommand zugewiesen (z.B. OracleCommand1)
    5. OralceDataAdapter kann nun leider kein DataSet zugewiesen werden (Diese Eigenschaft existiert nicht)
    6. OracleDataAdapter kann nun nicht mit Active := true aktiviert werden. (Diese Eigenschaft existiert nicht)
    7. Nun kann z.B. ein DataGrid mit DataSet1 verbunden werden (Die automatisch generierten DataTable1 gibt es auch nicht)
Man kann zur Laufzeit folgenden Code ausführen, dann werden Daten angezeigt:
Self.OracleDataAdapter1.Fill(Self.Dataset1) Aber leider nicht in der IDE

In dem von Delphi generierten Quellcode (procedure TWinForm.InitializeComponent) kann ich diese Zeile auch einfügen.
Beim Wechsel von Code auf Design ist nun auch tatsächlich eine Datenverknüpfung hergestellt. Nach einiger Zeit entfernt Delphi meine Zeile aus seinem Code.

Meine Frage: Wie mache ich das denn nun am geschicktesten?

Ich will auf keinen Fall so was wie die BDE oder ADO dazwischen haben.
Die .net Komponenten von Oracle sollten ja auch unterstützt werden.

Frage 2: Kann ich das nur in WinForms verwenden?
(In VCL Modus bekomme ich die Oracle Komponenten nicht installiert)

Für eine Antwort bedanke ich mich schon mal im Voraus.

MaBuSE


ps: Hier ein Bild

[edit=fkerber]Bild im Anhang. Mfg, fkerber[/edit]
Miniaturansicht angehängter Grafiken
image002_720.jpg  
  Mit Zitat antworten Zitat