1
Entwicklung von Oracle Datenbank Entwicklung von Oracle Datenbank --Anwendungen mit dem C++Builder Anwendungen mit dem C++Builder
von Inprise/Borland von Inprise/Borland
Database App. Dev.Database App. Dev.
Bornhardtstraße 3, D-38644 Goslar
Tel.: (0 53 21) 3 70 30Fax: (0 53 21) 89 24
E-Mail: [email protected]: http://www.PDV-SYSTEME.de
Dirk Henning
Database App. Dev.Database App. Dev.
C++ BuilderC++ Builder
C++ BuilderC++ Builderq Komponenten basiertes Rapid Application Development
(RAD) Werkzeug zur Erstellung von 32-Bit Windows Anwendungen.
q Echte visuelle Programmentwicklung auf der Basis vonC++ und Objekt PASCAL
q Multi-Framework Unterstützung für das Programm- und Oberflächendesign
Ø Visual Component Library (VCL)
Ø Object Windows Library (OWL)
Ø Microsoft Foundation Classes (MFC)
Ø Active Template Library (ATL)
Ø Standard Template Library (STL)
Database App. Dev.Database App. Dev.
q Umfangreicher Support für die Entwicklungdatenbankbasierter Anwendungen mit Hilfe
Ø der Borland Database Engine (BDE)
• Paradox, dBase & Text (one-tier)
• ODBC (one- und two-tier)
• SQLlinks (one- und two-tier)
Ø der Multi-tier Distributed Application Services (MIDAS)(one-, two- and three-tier)
Ø ADO, RDS / OLEDB (ab C++ Builder v5)(one-, two- and three-tier)
q COM/DCOM, MTS Unterstützung
q CORBA Unterstützung (Client & Server)
Database App. Dev.Database App. Dev.
C++ BuilderC++ Builder
q Sehr gut geeignet für die Entwicklung von
Ø 32-Bit Windows Kommandozeilen-Anwendungen
Ø 32-Bit Windows GUI Anwendungen
Ø 32-Bit DLLs
Ø NT-Services (fertige Komponenten vorhanden)
Ø COM / DCOM - Komponenten
Ø AxitveX Controls
Ø Umfangreiche Datenbank-Anwendungen(Hohe Abstraktionsebene)
Ø Corba-Anwendungen Client & Server
Ø Web-Applicationen Client & Server
Ø ...
Database App. Dev.Database App. Dev.
C++ BuilderC++ Builder
q Borland Database Engine (BDE)Borlands Abstraktion eines allgemeinen Zugriffs auf persistent gespeicherte Daten unterschiedlichster Form und Art.
q Advanced Data Objects (ADO ab C++Builder v5)Microsofts Abstraktion eines allgemeinen Zugriffs auf persistent gespeicherte Daten unterschiedlichster Form und Art.
q VCL-Komponenten für Datenzugriff und Datensteuerung(BDE, MIDAS, ADO)
Database App. Dev.Database App. Dev.
C++ Builders DatenbankunterstützungC++ Builders Datenbankunterstützung
2
Database App. Dev.Database App. Dev.
C++Builder DatenbankC++Builder Datenbank--ZugriffsarchitekturZugriffsarchitektur
Daten
Datenzugriffskomponenten Datensteuerungskomponenten
C++Builder Formularbzw. Datenmodul
BDE
(Anwendungsschnittstelle)
TDBGrid
TDBGrid
TDBEdit
TDBCheck
TDBEdit
TDBCheck
TDataSourceTTable
TQuery
ADOOLEDB
TDataSourceTADOTable
TADOQuery
Database App. Dev.Database App. Dev.
Applikation
Core BDE Environment
Native-DriverParadox,dBase,
Text, Access
ODBC-Stub SQLlink-Driverz.B. Oracle
Daten-Dateien
Oracle 7&8Database
ODBC-Manager
ODBC-Driver
OCI
SQLNet/Net80
Architektur der BDEArchitektur der BDE
Database App. Dev.Database App. Dev.
C++Builder C++Builder -- DatenzugriffskomponentenDatenzugriffskomponenten
DataSetDataSet
TableTable
QueryQuery
StoredProcStoredProc
DatabaseDatabase
SessionSession
BatchMoveBatchMove
UpdateSQLUpdateSQL
NestedTableNestedTable
Database App. Dev.Database App. Dev.
C++Builder C++Builder -- DatensteuerungskomponentenDatensteuerungskomponenten
DBGridDBGrid
DBNavigatorDBNavigator
DBLabelDBLabel
DBEditDBEdit
DBMemoDBMemo
DBImageDBImage
DBListBoxDBListBox
DBComboBoxDBComboBox
DBCheckBoxDBCheckBox DBRadioDBRadio--GroupGroup
DBLookupDBLookup--ListBoxListBox
DBLookupDBLookup--ComboBoxComboBox
DBRichEditDBRichEdit
DBCtrlGridDBCtrlGrid
DBChartDBChart
Database App. Dev.Database App. Dev.
C++Builder C++Builder TwoTwo--tier tier DBDB--AnwendungAnwendung
Oracle Oracle DBMSDBMS
DataData
FatFat--ClientClient
DBMSDBMSServerServer
OCIOCI
ODBCODBC
ODBC LinkODBC LinkSQL LinksSQL Links
Borland Database Engine Borland Database Engine (BDE)(BDE)
Database App. Dev.Database App. Dev.
C++Builder MultiC++Builder Multi--tier Unterstützungtier Unterstützung
MIDASMIDASServerServer
KomponentenKomponenten
3
Database App. Dev.Database App. Dev.
C++Builder MIDAS C++Builder MIDAS -- KomponentenKomponenten
ClientClientDataSetDataSet
DCOMDCOMConnectionConnection
SocketSocketConnectionConnection
DataSetDataSetProviderProvider
ProviderProvider
SimpleSimpleObjectBrockerObjectBrocker
RemoteRemoteServerServer
MidasMidasConnectionConnection
OleEnterpriseOleEnterpriseConnectionConnection
Database App. Dev.Database App. Dev.
C++Builder C++Builder ThreeThree--tier tier AnwendungAnwendung
OCIOCI
Oracle Oracle DBMSDBMS
DataData
DBMSDBMSServerServer
DataDataAccessAccessServerServer
ThinThin--ClientClient
ODBCODBC
ODBC LinkODBC LinkSQL LinksSQL Links
Borland Database Engine Borland Database Engine (BDE)(BDE)
Database App. Dev.Database App. Dev.
C++Builder KomponentenC++Builder Komponentenfür mehrdimensionale Datenanalysefür mehrdimensionale Datenanalyse
DecisionDecisionCubeCube
DecisionDecisionQueryQuery
DecisionDecisionSourceSource
DecisionDecisionPivotPivot
DecisionDecisionGridGrid
DecisionDecisionGraphGraph
Database App. Dev.Database App. Dev.Beispiel zur Datenanalyse (Entw.)Beispiel zur Datenanalyse (Entw.)
Database App. Dev.Database App. Dev.Beispiel zur Datenanalyse (Laufzeit)Beispiel zur Datenanalyse (Laufzeit)
Database App. Dev.Database App. Dev.
C++Builder Report C++Builder Report -- KomponentenKomponentenQuickRepQuickRep
SubDetailSubDetail StringBandStringBand
BandBand ChildBandChildBand
GroupGroup LabelLabel
DBTextDBText ExpressionExpression
SysDataSysData
MemoMemo
ExpressionExpressionMemoMemo
RichTextRichText
DBRichTextDBRichText
ShapeShape
ImageImage
DBImageDBImage
CompositeCompositeReportReport
PreviewPreview
TextTextFilterFilter
CSVCSVFilterFilter
HTMLHTMLFilterFilter
ChartChart
4
Database App. Dev.Database App. Dev.Beispiel zur Reporterstellung (Entw.)Beispiel zur Reporterstellung (Entw.)
Database App. Dev.Database App. Dev.Beispiel zur Reporterstellung (Vorschau)Beispiel zur Reporterstellung (Vorschau)
Database App. Dev.Database App. Dev.
C++ BuilderC++ Builder
Spezielle ToolsSpezielle Toolsfür die Datenbankentwicklungfür die Datenbankentwicklung
Database App. Dev.Database App. Dev.
SQLSQL--ExplorerExplorer(Schaltzentrale zur Bearbeitung von Datenbankdaten)(Schaltzentrale zur Bearbeitung von Datenbankdaten)
Database App. Dev.Database App. Dev.
VisualVisual--QueryQuery--BuilderBuilder(der Baukasten für SQL(der Baukasten für SQL--Abfragen)Abfragen)
Database App. Dev.Database App. Dev.
SQLSQL--MonitorMonitor(Debugging Werkzeug bis auf BDE(Debugging Werkzeug bis auf BDE--Treiberebene)Treiberebene)
5
Database App. Dev.Database App. Dev.PDVPDV--MRSMRS
(schnelle Analyse von Oracle(schnelle Analyse von Oracle--Fehlermeldungen)Fehlermeldungen)q Kostengünstiges allround Werkzeug
q Schnelle Problemlösung durch komponentenbasierteechte visuelle Programmentwicklung
q Investitionsschutz durch die Unterstützung aller derzeitpopulären Frameworks.
q effektives und stabiles Laufzeitverhalten durch ausgereifte Compilertechnik (C++ & Objekt PASCAL)
q Schnelle Produktivität durch kurze Einarbeitungszeiten
q Sehr gute Unterstützung für die Datenbankentwicklung
q Keine Runtime Lizenzgebühren für Datenbankschnittstellemit Ausnahme von MIDAS (ca. $300 pro App-Server beiunlimitiertem Client-Zugriff)
Database App. Dev.Database App. Dev.
C++ Builder: Was spricht dafür ?C++ Builder: Was spricht dafür ?
Database App. Dev.Database App. Dev.
Unsere persönliche Erfahrung:Unsere persönliche Erfahrung:
Sehr positives und effektives Sehr positives und effektives Arbeitswerkzeug gerade beiArbeitswerkzeug gerade bei
umfangreichen umfangreichen ORACLEORACLE--ProjektenProjekten. .
Fragen ?Fragen ?
Database App. Dev.Database App. Dev.
Entwicklung von Oracle Datenbank Entwicklung von Oracle Datenbank --Anwendungen mit dem C++Builder Anwendungen mit dem C++Builder
von Inprise/Borland von Inprise/Borland
Database App. Dev.Database App. Dev.
Bornhardtstraße 3, D-38644 Goslar
Tel.: (0 53 21) 3 70 30Fax: (0 53 21) 89 24
E-Mail: [email protected]: http://www.PDV-SYSTEME.de
Dirk Henning