Welche Komponente für DB Zugriff über ODBC am besten geeignet ???
-
hi,
ich kann ja auf eine odbc resource mit mehreren komponeten zugreifen sprich die bde oder ado .... was empfehlt ihr denn zu nehmen ????
danke
gruß
maik
-
Ich habe vor ca. 1 Jahr mal einen Test gemacht, in dem ich (leider unter VisualBasic) mehrere Programme geschrieben habe, die unterschiedliche Komponenten zum Datenbankzugriff verwendeten.
Ich werde auf meine Testergebnisse keine Garantie abgeben, aber ADO hat sich bei meinen Tests als die schnellste Zugriffsmethode herausgestellt. Zumindest von den Methoden, die ohne gigantischen Aufwand zu implementieren sind. Ich habe auf eine Oracle-Datenbank in einem lokalen Netzwerk zugegriffen. Bei Schreibanweisungen war ADO nur geringfügig schneller, aber bei SELECT-Anweisungen hat ADO alles getoppt. Komischerweise auch ODBC. Ich bin leider nicht der Profi, so daß ich Dir sagen könnte wie ADO auf die Datenbank zugreift, aber ich glaube mal gehört zu haben, das ADO über ODBC läuft. Wäre seltsam bei meinen Testergebnissen.Also, wie gesagt: Das sind nur meine Testergebnisse. Vielleicht hilft es Dir ja.
-
BorlandUser schrieb:
... aber ich glaube mal gehört zu haben, das ADO über ODBC läuft. Wäre seltsam bei meinen Testergebnissen.
wo hast du das gehört ?
Meines wissens basiert ADO auf der ATL und holt/schreibt die Daten über OLE- Provider. Sicherlich kann mit ADO- Komponenten auch ODBC- Verbindungen aufbauen. Basieren tuts aber nicht auf ODBC.
-
ich mach das ganze halt über ne odbc da ich diese per installation mit install shield eintragen kann. kann ich denn auch so ohne odbc auf eine access datei zugreifen ???? wenn ja wäre ich für diesen hinweis sehr dankbar da es sich herausgestellt hat das zu problemen bei windows98 sowie xp beim anlegen der odbc verbindung mit install shield kommt. wenn man nun denn neunen mdac 2.8 ms patch aufspiel klappt alles wunderbar aber ohne denn geht unter 98 und xp keine automatische eintragung in die odbc per install shield
-
naja,
mach es dann halt per Code:
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include <odbcinst.h> // nicht vergessen ODBCCP32.LIB dem Projekt hinzufügen #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { bool temp= SQLConfigDataSource( NULL, ODBC_ADD_DSN, /* OR ODBC_ADD_SYS_DSN */ "Microsoft ODBC for Oracle", "BufferSize=40000 CatalogCap=1\0" "ConnectString=MyConnectString\0" "Description=My Description\0" "DSN=MyMy2\0" "NumberFloat=0\0" "PWD=MyPassword\0" "RDOSupport=0\0" "Remarks=0\0" "RowLimit=0\0" "Server=MyOracleServer\0" "SynonymColumns=0\0" "SystemTable=0\0" "TranslationDLL=\0" "TranslationName=\0" "TranslationOption=\0" "TxnCap=0\0" "UID=MyUserID\0" ); if (temp) ShowMessage("erfolgreich"); else ShowMessage("tut nicht"); } //---------------------------------------------------------------------------
mehr infos bekommt man in der MSDN- Installer DLL API Reference
speziell für Access würde das dan SOOOO aussehen