Unit dualQry

Classes

TDualQuery -

Functions

Register -

Types

tQueryType

Constants

MaxParam
MaxParamLen

Variables


Functions


Procedure Register;


Types


tQueryType = (qtQBE,qtSQL);
max length of a substituted param

Constants

MaxParam = 10

Small dataset derived class } This component was derived from the 16 bit TUQBE class developed by David Berneda, which has always been free. Grant Carpenter made an attempt to update it to 32 bits but some of its functionality was lost. I modified the original 16 bit control to regain functionality but since I find that I use a mix of QBE and SQL queries, I thought it would be nice to have a component which would handle either one. The BDE only requires that you tell it what query language it should expect. It will cheerfully execute a query in either format. It has been substantially modified by me and thus carries the Morphic Molecules logo. However it is free for any use, commercial or otherwise. It will be supported to a limited extent by email (everett@txdirect.net) DISCLAIMER : I take no responsibility for any damage, loss of goods, services,etc. which might be caused by the use of this control by you or anyone using software in which you have included this control. MMEverett everett@txdirect.net { Modified original notes. } (* Answer table name can be specified with or without alias. Eg: :dbdemos:void.db void.db -- you must have set up drive and types correctly. c:\mydb\void.db Assumed answer table Driver: DBASE THE OLD COMPONENT USED PARADOX as a DEFAULT. The new property: AnswerType allows to PARADOX,DBASE and ASCII answer table types If the answer table exists, an atempt to delete it is made before copying the result cursor. The physical answer table must be opened in exclusive mode and all related family files are erased together with the table. That is, if something else has this table open, the query will error out. Unfortunately, if the query does not return a table; e.g. in update, insert, or delete queries, you will get an error message saying that I could not set a cursor, although the query has executed just fine. You can trap for this with an on EDatabaseError in a try..except clause, although you will still get the error when running under Delphi. Other functions in this unit: ** Function GetAliasPath(Const Alias:String):String; Returns the path for the "alias" or a empty string if not found. Eg: ('dbdemos') returns 'c:\delphi\demos\data' ** Function GetDBTablePath(Const TableName:String):String; Returns the TableName with path instead of alias (if it has an alias). Eg: (':dbdemos:customer.db') returns 'c:\delphi\demos\data\customer.db'

MaxParamLen = 255

max number of query parameters

Variables