MySQLDAC Komponenten in externen Dateien verwenden
-
Hi,
ich schreibe gerade eine Anwendung, die mit drei verschiedenen MYSQL Datenbanken arbeitet. Da ich sehr oft zu irgendeiner Datenbank connecten muss, möchte ich den Code nur einmal programmieren und dann jederzeit von überall nutzen können.
Ich stelle mir das so vor. Ich habe irgendwo mein TmySQLDatabase Object. Nun rufe ich eine Funktion auf, der ich die Adresse dieses Objekt übergebe und danach dann die Datenbank [ Beispiel: DBConnect(&SQLDatabase,"db1"); ].
Jetzt soll die Funktion die Verbindung herstellen und danach das Objekt zurückgeben, dass ich damit normal weiterarbeiten kann.
Daher habe ich mir zwei Dateien angelegt:
database.cpp
#include "database.h" // Mit der Datenbank verbinden bool __fastcall DBConnect(TmySQLDatabase *database, String db) { return true; }
und
database.h
#include <vcl.h> // mit Datenbank verbinden bool __fastcall DBConnect(TmySQLDatabase *database, String db);
Wenn ich jetzt die CPP Datei meinem Projekt hinzufüge und die Header inklude kommen folgende Fehlermeldungen:
[C++ Fehler] DATABASE.H(7): E2147 Parameterdeklaration darf nicht mit 'TmySQLDatabase' beginnen.
[C++ Fehler] database.cpp(8): E2147 Parameterdeklaration darf nicht mit 'TmySQLDatabase' beginnen.Wenn ich jetzt noch in der Header folgedene Zeile mit aufnehme:
#include "mySQLDbTables.hpp"
kommt diese Meldung:
[C++ Warnung] Math.hpp(76): W8058 Präcompilierter Header: Initialisierte Daten im Header kann nicht erzeugt werden.
Meine CPP Datei und die H Datei liegen in einem Parallel Ordner zum Projekt, falls dies wichtig ist.
Ich hoffe ich habe mich verständlich ausgedrückt und mir kann jemand helfen.
Grüße Jens
-
Verwendest du die ZEOS-Komponente?
Gruss Steve_N
-
Hi,
nein, dass sind die MySQLDac Komponentn.
Gruß Jens