dataflex connectivity kit for pervasive.sql eddy kleinjan
TRANSCRIPT
DataFlex Connectivity Kit for Pervasive.SQL
Eddy Kleinjan
Agenda
The Big Picture
Pervasive.SQL models
Driver Concepts
WebApp Demo
Micro Kernel Database Engine
Transactional(Btrieve)
Relational(SQL, ODBC)
DDF
Where Does It Fit in?The Pervasive.SQL DatabaseDataFlex Connectivity Kit for Pervasive.SQL
Fast & Reliable
Client/Server Architecture Spreads Load Server Caching Improves Transaction Automatic Crash Recovery Transactions (Concurrent & Exclusive) 24h Operations through On-Line Backups
and Transaction Logs Zero Administration
Great Match!
Server Platforms Windows NT Novell NetWare
Client Platforms Dos, 16-bin Windows, 32-bit Windows
Pervasive.SQL Models
Micro
Kernel
Database
EngineTransactional
(Btrieve)
Relational(SQL, ODBC)
Using Pervasive.SQL 7 Tools
Setup Utility to Set Parameters Use InstallScout for Client Setup Monitor Utility Watches Activity Use Pervasive.SQL ODBC Use DDF Ease to manage your data
Driver Design Goals
Compatibility with DataFlex Easy To Use Migration Tools Automatic Data Restructuring Connect to Existing Btrieve Data Data Sharing Through DDF’s
As Compatible as possible
No Program Changes No Database Changes No Data Dictionary Changes Supports Original Recnum Value Supports Record- and Filelocking
Filelocking prevents deadlock situations! Supports Overlap fields
Easy Conversion
DataFlex to Pervasive.SQL Support in all versions of Visual DataFlex Character Mode utility provided
Migrate ‘DataFlex for Btrieve’ Data using New Migration Utility Integrated in VDF6 Separate ‘Database Builder’ Utility
To Recnum Or Not To Recnum
Recnum is numeric record identifier
Driver Has It’s Own Record
Indexes Don’t Have to be Unique
Only Required When Original Recnum
Values needs to be Retained
Automatic Restructuring
Use ‘Database Builder’ Use DataFlex Database API Add, Change and Remove Fields Add, Change and Remove Indexes
Btrieve is Recordmanager
Doesn’t know about fieldtypes Doesn’t check data Only uses types for Sorting
DataFlex File Structure
Byte 0
: Header: Fields: Indexes: OtherByte 512
: DataEnd-of-File
DataFlexDAT
Btrieve File Structure
: File: Fields: Indexes
: Other
: Data
BtrieveBTR
DDFFiles
File
Field
Index
INT
DDF’s
Data Definition Files Describe a File’s Structure
File information (FILE.DDF) Field information (FIELD.DDF) Index information (INDEX.DDF)
Pervasive.SQL Models
Micro
Kernel
Database
EngineTransactional
(Btrieve)
Relational(SQL, ODBC)
DDF
Data Sharing
DDF’s are the way to share data Pervasive’s ODBC driver uses DDF’s Crystal Reports uses DDF’s Most Btrieve Based Products use
DDF’s
INT Files
Contains Extra Information DataFlex Field Types (Overlap)
Relationship Information Converted with/without Recnum support Overrule DDF settings
Connect to Btrieve Data
Include DDF Directory in DFPath Create Filelist entry to DDF
“DFBTRDRV:MyFile” Create INT File
“MyFile.INT” Supports non-unique indexes
DDF Ease
Utility to create/maintain database ‘Check Database’ Tests SQL
Compatibility ‘Check Database’ Function Reports:
Overlap fields (No SQL Equivalent) Text/Binary fields > 255 char while not
being the last field in the record
Other features
Use Password Security Allow read-only access
Control Transaction type at runtime File- or Recordlocking
New ‘open as’ mechanism
Version 1.2 Improvements
Structure Caching Faster Finding (up to 30%) ‘Runtime Server’ support Zerofile can do ‘Re-create’ instead of
‘Record-by-Record’ delete New Fields: Currency, Timestamp and
64-bit integers
Version 1.2 Improvements
Improved Deadlock Detection Supports alternate ‘Open As’
Open “DFBTRDRV:path|DDFName” as x DFBTRDRV: Drivername Path: path to file (e.g. CUSTBACK.BTR) DDFName: Name of ‘as’ file
Structure Caching
BtrieveBTR
DDFFiles : File
: Fields: Indexes: Data
File
Field
Index
CCHFiles
Writes DDF Into to CCH FileNext Open Read CCHImproves File Open SpeedCCH Expires on Changes
Structure Caching
Writes DDF info to Sequential file (CCH) Next Open Read CCH instead of DDF Improves File Opening Speed up to 400%
Depending on Configuration CCH File Automatically Expires On
Structure Changes
Faster Findings
Record ID must be read for each record Previous Version Used Database Call New Version Gets ID from Memory
Runtime Server Support
Special 1-user NetWare Version Allows 1 NetWare User but Unlimited
Process Users Low-Cost Database Server
Zerofile Improvements
Current Version deletes Record-by-Record
New Version can be Configured To Recreate File Single-User Operation Much faster on Large Datafiles
Pervasive.SQL 2000
SQL Interface supports multiple Text/Binary field larger than 255 bytes
Server, Workgroup and Workstation Internet Data Server (IDS)
Demo
Converting Data using
Migrating ‘DataFlex for Btrieve’
WebApp: ‘WebDDF’
Questions?
About Pervasive.SQL?
About the Driver?
Thank You!