Announcement

Collapse
No announcement yet.

OCI Programmierung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • OCI Programmierung

    Hallo Leute,

    auf der Suche nach Experten im Bereich der Datenbankprogrammierung bin ich auf dieses Forum aufmerksam geworden, dass tatsächlich mal so aussieht, als ob hier Fragen auch beantwortet werden.
    Vielleicht, finde ich ja endlich hier die Informationen, die ich schon so lange suche.

    Ich möchte mal versuchen, mein Problem so deutlich wie möglich zu spezifizieren:
    Gegeben ist eine Software, die Mess- und Prüfmaschinen bedient. Diese ist mittels einer DLL mit einer Btrieve Datenbank verbunden. Das Handling dieser Datenbank erfolgt auf low-level-Basis, das heisst die Daten werden bitweise in Datenreihen geschrieben und können durch genaue Positionserkennung wieder ausgelesen werden. Bei einer Umstellung von Btrieve auf Oracle wäre es nun wichtig, die zu bedienende Software nicht zu verändern, sondern nur die angeschlossene DLL. Dabei müssen jedoch die Funktionsaufrufe der DLL gleich bleiben. Das heisst, dass ich einen gleichartigen Zugriff auf die Oracle Datenbank suche.
    Im Moment gestaltet es sich so, dass eine universelle Funktion verschiedene Operationen (Insert, Update, Delete, Select) durchführen kann, ohne die Struktur der Tabelle zu kennen und ohne dem Buffer Informationen über die Struktur mitgeben zu müssen.
    Wollte ich nun mittels „normaler“ SQL-Befehle das Handling ändern, hiesse das, dass ich sämtliche Datenstrukturen ändern müsste, um die Tabellen SQL-fähig zu machen. Das wäre ein riesiger Aufwand und deshalb suche ich eine Möglichkeit, die Umstellung auf anderem Weg zu realisieren.

    Hat vielleicht jemand einen Ideenansatz für mich, oder gar Erfahrung mit meinem Problem. Oder kennt jemand jemanden, der so etwas schon mal gemacht hat? Über eine schnelle Antwort wäre ich sehr dankbar.

    Manuela Kaiser

  • #2
    Es ist noch etwas ungenau was da geschrieben steht.

    Aber deine DLL muß ja einen aktuellen Schreib bzw Lesepuffer zur Verfügung stellen. Dazu könntest Du ein Stückchen Hauptspeicher anbieten, in dem kann dann direkt gelesen und geschrieben werden.

    Je nachdem was zuvor oder danach passiert wird dieses "Stückchen" Hauptspeicher durch Lesen oder Schreiben eines BLOB Feldes bedient.

    Willst Du allerding direkt jedes Bit auf die Platte bannen, dann wirst Du beim Einsatz einer SQL Datenbank wohl eher Trauer tragen müssen.

    Da empfiehlt es sich dann die Daten in einer Datei auf der Platte (beim Schreiben des nur da können sie verloren gehen) zu puffern und diese dann "offline" in die Datenbank zu ziehen.

    Btrieve/Dbase etc und Oralce da sind koneptionelle Welten zwischen

    Comment

    Working...
    X