[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'DB' (#fcl)

# IProviderSupport

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Interface for Provider support

## Declaration

Source position: db.pas line 1412

`type IProviderSupport = interface`
`procedure PSEndTransaction();` |  | End an active transaction
`procedure PSExecute;` |  | Execute the current command-text.
`function PSExecuteStatement();` |  | Execute a SQL statement.
`procedure PSGetAttributes();` |  | Get a list of attributes (metadata)
`function PSGetCommandText;` |  | Return the SQL command executed for getting data.
`function PSGetCommandType;` |  | Return SQL command type
`function PSGetDefaultOrder;` |  | Default order index definition
`function PSGetIndexDefs();` |  | Return a list of index definitions
`function PSGetKeyFields;` |  | Return a list of key fields in the dataset
`function PSGetParams;` |  | Get the parameters in the commandtext
`function PSGetQuoteChar;` |  | Quote character for quoted strings
`function PSGetTableName;` |  | Name of database table which must be updated
`function PSGetUpdateException();` |  | Transform exception to UpdateError
`function PSInTransaction;` |  | Is the dataset in an active transaction.
`function PSIsSQLBased;` |  | Is the dataset SQL based
`function PSIsSQLSupported;` |  | Can the dataset support SQL statements
`procedure PSReset;` |  | Position the dataset on the first record
`procedure PSSetCommandText();` |  | Set the command-text of the dataset
`procedure PSSetParams();` |  | Set the parameters for the command text
`procedure PSStartTransaction;` |  | Start a new transaction
`function PSUpdateRecord();` |  | Update a record
`end;`

## Inheritance

`IProviderSupport` |  | Interface for Provider support

## Description

IProviderSupport is an interface used by Delphi's TProvider (datasnap) technology. It is currently not used in Free Pascal, but is provided for Delphi compatibility. The TDataset class implements all the methods of this interface for the benefit of descendent classes, but does not publish the interface in it's declaration.

## See also

TDataset |  | Base class for records-based data-access