Overview General Comments About Delphi’s Data Access Technologies

Slides:



Advertisements
Similar presentations
Publishing Your PDB Under Windows
Advertisements

COM vs. CORBA.
FAST Radar System Engineering Overview. FAST Radar Overview –What’s Required? IIS 6.0  With Microsoft.NET Framework 1.1 and SMTP for MS SQL Server.
Technical Architectures
Fundamentals, Design, and Implementation, 9/e Chapter 12 ODBC, OLE DB, ADO, and ASP.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
14 1 Chapter 14 Database Connectivity and Web Development Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Visual Basic Database Access BICS546. Microsoft Universal Data Access OLE DB: The OLE database protocol –Allows a program to access information in any.
Chapter 11 – Database-Oriented Middleware & EAI Database access is the key element to EAI, especially data-level EAI. Database oriented middleware is not.
Systems Architecture, Fourth Edition1 Internet and Distributed Application Services Chapter 13.
Chapter 12 Database Connectivity with ASP.NET JavaScript, Third Edition.
Chapter 14 Database Connectivity and Web Technologies
Blue Group (ADO) 3/10/98 Universal Data Access with ActiveX Data Objects The Blue Group *Jennifer Kochan *Rebecca Orozco *Chris Papandria *Alicja Stanczak.
Distributed Systems: Client/Server Computing
Module 2: Planning to Install SQL Server. Overview Hardware Installation Considerations SQL Server 2000 Editions Software Installation Considerations.
Microsoft Access Ervin Ha.
ODBC Open DataBase Connectivity a standard database access method developed by Microsoft to access data from any application regardless of which database.
CIS 764 – Presentation Somil Chandwani.  With Microsoft Data Access Components (MDAC), developers can connect to and use data from a wide variety of.
Object Oriented Databases by Adam Stevenson. Object Databases Became commercially popular in mid 1990’s Became commercially popular in mid 1990’s You.
CHAPTER 9 DATABASE MANAGEMENT © Prepared By: Razif Razali.
SSIS Over DTS Sagayaraj Putti (139460). 5 September What is DTS?  Data Transformation Services (DTS)  DTS is a set of objects and utilities that.
September 6, 2015 Connecting Client Applications to Informix Databases using IBM Informix Connect and ODBC James Edmiston Database Consultant Quest Information.
Visual Basic: An Object Oriented Approach 12 – Creating and using ActiveX objects.
Overview of SQL Server Alka Arora.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Peter Hinrichsen TechInsite Pty Ltd Rolling your own Object Persistence Framework (OPF) Please consider the following questions:
How to Configure Informix Connect and ODBC James Edmiston Informix DBA Consultant/Quest Information Systems, Inc. Informix User Forum 2005 Moving Forward.
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
Object and component “wiring” standards This presentation reviews the features of software component wiring and the emerging world of XML-based standards.
Copyright ®xSpring Pte Ltd, All rights reserved Versions DateVersionDescriptionAuthor May First version. Modified from Enterprise edition.NBL.
INSTALLING MICROSOFT EXCHANGE SERVER 2003 CLUSTERS AND FRONT-END AND BACK ‑ END SERVERS Chapter 4.
COM vs. CORBA Computer Science at Azusa Pacific University September 19, 2015 Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department.
Using Visual Basic 6.0 to Create Web-Based Database Applications
DB Libraries: An Alternative to DBMS By Matt Stegman November 22, 2005.
COLD FUSION Deepak Sethi. What is it…. Cold fusion is a complete web application server mainly used for developing e-business applications. It allows.
Fundamentals of Database Chapter 7 Database Technologies.
11 MANAGING AND DISTRIBUTING SOFTWARE BY USING GROUP POLICY Chapter 5.
CS480 Computer Science Seminar Introduction to Microsoft Solutions Framework (MSF)
1 SQL Server 2000 Administration Kashef Mughal MSB.
DTS Conversion to SSIS Conversion Best Practices Mike Davis
ABC Manufacturing Demonstration of Attendance Enterprise.
File Processing Concepts – Field – combination of 1 or more characters that is the smallest unit of data to be accessed – Record – group of related fields.
Universal Data Access and OLE DB. Customer Requirements for Data Access Technologies High-Performance access to data Reliability Vendor Commitment Broad.
Oracle 10g Database Administrator: Implementation and Administration Chapter 2 Tools and Architecture.
PHP Features. Features Clean syntax. Object-oriented fundamentals. An extensible architecture that encourages innovation. Support for both current and.
Remote Access Using Citrix Presentation Server December 6, 2006 Matthew Granger IT665.
What is database?  Any Method for access info into Application from DataBase?  ODBC is standard for Accessing Data.  Problem with ODBC:  Information.
Oracle's Distributed Database Bora Yasa. Definition A Distributed Database is a set of databases stored on multiple computers at different locations and.
School of Computing and Management Sciences © Sheffield Hallam University Issues of Data Access 101(-ish) ways to access data from a database! ODBC One.
6/1/2001 Supplementing Aleph Reports Using The Crystal Reports Web Component Server Presented by Bob Gerrity Head.
DAVID M. KROENKE’S DATABASE PROCESSING, 10th Edition © 2006 Pearson Prentice Hall 12-1 David M. Kroenke’s Chapter Twelve: ODBC, OLE DB, ADO, and ASP Part.
Developing Database Applications with the Microsoft.NET Framework Cary Jensen Jensen Data Systems, Inc.
Database Connectivity with ASP.NET. 2 Introduction Web pages commonly used to: –Gather information stored on a Web server database Most server-side scripting.
Introduction TO Network Administration
Linux Operations and Administration
ViaSQL Technical Overview. Viaserv, Inc. 2 ViaSQL Support for S/390 n Originally a VSE product n OS/390 version released in 1999 n Identical features.
Introduction Because database applications today reside in a complicated environment, various standards have been developed for accessing database servers.
Database Issues Peter Chochula 7 th DCS Workshop, June 16, 2003.
ADO .NET from. ADO .NET from “ADO .Net” Evolution/History of ADO.NET MICROSOFT .NET “ADO .Net” Evolution/History of ADO.NET History: Most applications.
Lecture 4 Manipulating Form Data using methods of Recordset and RecordsetClone in VBA Restrict data with filter 1 Rapid Application Development.
1 Copyright © 2008, Oracle. All rights reserved. Repository Basics.
The Holmes Platform and Applications
Visual Basic Database Access
آشنایی با نرم افزار Microsoft Access
Netscape Application Server
Created by Kamila zhakupova
Chapter 3: Windows7 Part 4.
Ch > 28.4.
AIMS Equipment & Automation monitoring solution
Database Processing: David M. Kroenke’s Chapter Twelve: Part One
Presentation transcript:

Developing Win32 Database Applications with Delphi Cary Jensen Jensen Data Systems, Inc.

Overview General Comments About Delphi’s Data Access Technologies Overview of Data Access Technologies The Borland Database Engine dbExpress dbGo (ADO) MyBase InterBase Express DataSnap Third-Party Data Access Options Data Modules Data Aware Controls Programming with Data Providers

TDataSet The Origins The Legacy Things changed with Delphi 3 Paradox, the Paradox Engine, ODAPI, IDAPI, IDAPI, BDE The Legacy A navigational interface in a largely set-based world Things changed with Delphi 3

Borland Database Engine (BDE) Delphi C++ Builder Data Gateway Visual dBASE Borland Database Engine (BDE) SQL Links ODBC Socket TCP/IP, SPX/IPX, NetBEUI ODBC Driver Local Tables Paradox, dBASE, Access, FoxPro Remote Tables Oracle, Sybase, MS SQL Server, ... ODBC-ready databases

Session (default) BDE Database (default) DataSets (Table, Query, StoredProc) DataSource Data Controls (DBGRid, etc.)

Many legacy applications exist which use it BDE Advantages If you already have it installed and working for existing applications, new applications require little or no configuration to use it Many legacy applications exist which use it Two or more applications written in Delphi can easily share global aliases It has relatively good performance across a large number of data types It provides access to installed ODBC drivers

BDE Limitations In the typically deployment of BDE-based applications, a copy of the BDE must be installed and configured on each workstation (a network installation is possible, but requires manual registry configuration) The BDE is somewhat inefficient, in that it stores as many as three copies of table metadata When used with local tables such as Paradox tables, failure to correctly configure the BDE can produce periodic index corruption If a new BDE application is incorrectly installed, existing BDE applications may fail to initialize properly The BDE is available only for the Windows platform

Delphi’s dbExpress Components dbExpress Driver Vendor Library Database

dbExpress SQLConnection Unidirectional DataSets DataSetProvider ClientDataSet SQLClientDataSet DataSource Data Aware Controls

dbExpress Advantages Data-related operations in dbExpress tend to be faster than using other technologies dbExpress-based applications can be deployed under both Windows and Linux environments Applications designed to use dbExpress can more easily be ported to using DataSnap dbExpress applications require fewer support files and can require far less configuration than BDE applications

dbExpress Limitations dbExpress applications are generally more complicated than other types of Delphi database applications to program. In addition to requiring more components to access and edit data, dbExpress applications often require more lines of code than non-dbExpress applications There are relatively few dbExpress drivers available

Microsoft Universal Data Access (MDAC) Delphi ADO Datasets ActiveX Data Access Components OLE DB Provider Plugable Layer Data (database, spreadsheet, document, etc.) Data

ActiveX Data Objects TADOConnection TADOCommand TDataSet Descendants DataSource Data Aware Controls

ADO Advantages All Windows-based computers shipped in the past few years already have MDAC installed. As a result, most ADO-based applications require only the installation of the specific OLE DB provider, at most ADO can be used from a wide range of development environments, including MS Access, VisualBasic, Delphi, Visual C++, to name of few A wide range of OLE DB providers are available Applications that have been deployed as COM+ applications (formerly referred to Microsoft Transaction Server components), can pool ADO connections, producing improved performance in environments that require large numbers of independent requests for data, such as Web server extensions

ADO Limitations ADO is available only for the 32-bit Windows operating system Having MDAC installed and configured is not enough. In some cases, you must also install and register an appropriate OLE DB provider Performance using ADO is largely reliant on the quality of the OLE DB provider that you are using If you are using the OLE DB provider for ODBC, an appropriate ODBC driver must also be installed and configured

if MidasLib unit not used MyBase - ClientDataSet ClientDataSet MIDAS.DLL if MidasLib unit not used Local File XML or CDS

MyBase ClientDataSet DataSource Data Aware Controls

MyBase applications have minimal installation requirements MyBase Advantages MyBase applications have minimal installation requirements The data can be stored in XML format, making it easy to access this data from outside of the application Data can be loaded and saved without code. Simply point the client dataset's FileName property to a file that contains the proper XML or binary client dataset data, and it will take care of the rest. (It is better to explicity load and save using SaveToFile and LoadFromFile)

MyBase Limitations Because the records in a client dataset are stored in-memory, the number of records that you can load is limited by the amount of real and virtual memory available on your machine Large files may take a significant amount of time to load from a file into a client dataset. For example, 100,000 records may take 5 seconds or so to load into memory MyBase applications are limited to single user applications. If you want to create a multiuser application, you must use one of the other available technologies

InterBase Express IBDatabase gds32.dll InterBase

InterBase Express IBTransaction IBDatabase IBTransaction IBSQL IBTable, IBQuery, IBStoredProc, IBDataSet DataSource Data Aware Controls

InterBase Express Advantages InterBase Express provides access to InterBase without the BDE Because InterBase Express components are designed specifically for InterBase, they include a number of specialized components that access and leverage InterBase features Interbase Express components are available for both Delphi and Kylix, meaning that you can build applications that employ InterBase Express for machines running Linux

InterBase Express Limitations InterBase Express works only with the InterBase database server

DataSnap    DataSnap Clients  DataSnap Server Database Server

with DataSetProviders Remote Connection Component Remote Data Module with DataSetProviders Data Access Components Database

DataSnap DataSetProvider Connection Components LocalConnection SharedConnection ConnectionBroker ClientDataSet DataSource Data Aware Controls

DataSnap client applications have few installation requirements DataSnap Advantages DataSnap client applications have few installation requirements Business rules can be implemented on a server, permitting these rules to be updated independent of the individual client applications They permit load balancing They can implement fail-over for high reliability They provide a reliable, distributed upgrade path to dbExpress and MyBase applications The connection components support a variety of internetworking protocols

DataSnap Limitations While DataSnap offers additional flexibility over traditional client/server solutions, it requires more development. Specifically, in addition to writing the client application, you also need to write the application server DataSnap applications require an additional license before they can be deployed. However, since Delphi 6, this license comes with the Enterprise and Architect editions of Delphi DataSnap servers must also employ one of the other data access mechanisms. For example, the application server may use the BDE or ADO. As a result, DataSnap application developers must be familiar with at least two data access mechanisms (DataSnap plus at least one more)

Third-Party Data Access Components

Third-Party Data Controls Advantages May support specialized features of the vendor’s database If designed with the TDataSet interface in mind, it may be easy to convert from some other data access mechanism to the vendor’s data access mechanism Third-party vendors are generally highly motivated to provide nearly bug-free components

Third-Party Data Controls Limitations Typically support only one database Ties you to that vendors database

Data Modules Non-visual container for non-visual components Permit sharing of objects Excellent classes for implementing custom components Are not always appropriate for data controls, especially in the following situations Multi-instance forms Forms used for reports Unique data views

Data Aware Controls Convenient and effective Permit you to build interfaces quickly Automatically respond to changes in the data Some developers have a bias against data aware controls In response, they often create their own framework of data awareness with custom controls

Using Providers in Database Applications Independent layer for data access Decouples your user interface from the data access mechanism Is a more generalized approach than data modules

Thank You !