<?xml version="1.0" encoding="ISO-8859-1"?>
<fpdoc-descriptions>
<package name="fcl">

<!--
  ====================================================================
    sqltypes
  ====================================================================
-->

<module name="sqltypes">
<short>Types used in various SQL related units</short>
<descr>
</descr>

<!-- enumeration type Visibility: default -->
<element name="TSchemaType">
<short>Schema type to retrieve</short>
<descr>
<var>TSchemaType</var> describes which schema information to retrieve in the
<link id="#fcl.sqldb.TCustomSQLQuery.SetSchemaInfo">TCustomSQLQuery.SetSchemaInfo</link>
call. Depending on its value, the result set of the dataset will have different fields,
describing the requested schema data. The result data will always have the same
structure.
</descr>
<seealso>
<link id="#fcl.sqldb.TCustomSQLQuery.SetSchemaInfo">TCustomSQLQuery.SetSchemaInfo</link>
<link id="#fcl.sqldb.RetrievingSchemaInformation">Retrieving Schema Information</link>
</seealso>
</element>

<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stNoSchema">
<short>No schema</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stTables">
<short>User Tables in database</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stSysTables">
<short>System tables in database</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stProcedures">
<short>Stored procedures in database</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stColumns">
<short>Columns in a table</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stProcedureParams">
<short>Parameters for a stored procedure</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stIndexes">
<short>Indexes for a table</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stPackages">
<short>Packages (for databases that support them)</short>
</element>

<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stSchemata">
<short>List of schemas in database(s)  (for databases that support them)</short>
</element>


<!-- enumeration value Visibility: default -->
<element name="TSchemaType.stSequences">
<short>Sequences (for databases that support them)</short>
</element>
<!-- enumeration type Visibility: default -->
<element name="TStatementType">
<short>Type describing the kind of SQL statement</short>
<descr>
<var>TStatementType</var> describes the kind of SQL statement that was
entered in the <var>SQL</var> property of a <link id="#fcl.sqldb.TSQLQuery">TSQLQuery</link> component.
</descr>
<seealso>
  <link id="#fcl.sqldb.TSQLQuery">TSQLQuery</link>
</seealso>
</element>

<!-- enumeration value Visibility: default -->
<element name="TStatementType.stUnknown">
<short>The statement type could not be detected.</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stSelect">
<short>The statement is a SQL SELECT statement</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stInsert">
<short>The statement is a SQL INSERT statement</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stUpdate">
<short>The statement is a SQL UPDATE statement</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stDelete">
<short>The statement is a SQL DELETE statement</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stDDL">
<short>The statement is a SQL DDL (Data Definition Language) statement</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stGetSegment">
<short>The statement is a SQL get segment statement</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stPutSegment">
<short>The statement is a SQL put segment statement</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stExecProcedure">
<short>The statement executes a stored procedure</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stStartTrans">
<short>The statement starts a transaction</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stCommit">
<short>The statement commits a transaction</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stRollback">
<short>The statement rolls back a transaction</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TStatementType.stSelectForUpd">
<short>The statement selects data for update</short>
</element>

<!-- enumeration type Visibility: default -->
<element name="TDBEventType">
<short>Type of database event</short>
<descr>
<var>TDBEventType</var> describes the type of a database event message as generated
by <link id="#fcl.sqldb.TSQLConnection">TSQLConnection</link> through the
<link id="#fcl.sqldb.TSQLConnection.OnLog">OnLog</link> event.
event.
</descr>
<seealso>
<link id="#fcl.sqldb.TSQLConnection">TSQLConnection</link>
<link id="#fcl.sqldb.TSQLConnection.OnLog">TSQLConnection.OnLog</link>
<link id="#fcl.sqldb.TDBLogNotifyEvent">TDBLogNotifyEvent</link>
</seealso>
</element>

<!-- enumeration value Visibility: default -->
<element name="TDBEventType.detCustom">
<short>Custom event message</short>
</element>

<!-- enumeration value Visibility: default -->
<element name="TDBEventType.detPrepare">
<short>SQL prepare message</short>
</element>

<!-- enumeration value Visibility: default -->
<element name="TDBEventType.detExecute">
<short>SQLExecute message</short>
</element>

<!-- enumeration value Visibility: default -->
<element name="TDBEventType.detFetch">
<short>Fetch data message</short>
</element>

<!-- enumeration value Visibility: default -->
<element name="TDBEventType.detCommit">
<short>Transaction Commit message</short>
</element>

<!-- enumeration value Visibility: default -->
<element name="TDBEventType.detRollBack">
<short>Transaction rollback message</short>
</element>

<!-- enumeration value Visibility: default -->
<element name="TDBEventType.detParamValue">
<short>Parameter name and value message</short>
</element>

<!-- enumeration value Visibility: default -->
<element name="TDBEventType.detActualSQL">
<short>Actual SQL as sent to engine message</short>
</element>


<!-- set type Visibility: default -->
<element name="TDBEventTypes">
<short>Set of database event types</short>
<descr>
<var>TDBEventTypes</var> is a set of <link id="TDBEventType"/> values, which
is used to filter the set of event messages that should be sent. The
<link id="#fcl.sqldb.TSQLConnection.LogEvents">TSQLConnection.LogEvents</link>
property determines which events a particular connection will send.
</descr>
<seealso>
<link id="#fcl.sqldb.TSQLConnection.LogEvents">TSQLConnection.LogEvents</link>
<link id="#fcl.sqldb.TDBLogNotifyEvent">TDBLogNotifyEvent</link>
<link id="#fcl.sqldb.GlobalDBLogHook">GlobalDBLogHook</link>
</seealso>
</element>


<!-- array type Visibility: default -->
<element name="TQuoteChars">
<short>Type to describe quote characters.</short>
<descr>
<var>TQuoteChars</var> is an array of characters that describes the used delimiters
for string values.
</descr>
<seealso>
<link id="#fcl.sqldb.SingleQuotes"/>
<link id="#fcl.sqldb.DoubleQuotes"/>
</seealso>
</element>

<!-- class Visibility: default -->
<element name="TSqlObjectIdentifierList">
<short>List of <var>TSqlObjectIndentifier</var> instances</short>
<descr>
<var>TSqlObjectIdentifierList</var> is a list class holding a list of <link id="TSqlObjectIndentifier"/> elements.
It is used in the <link id="#fcl.sqldb.TSQLConnection.GetObjectNames">TSQLConnection.GetObjectNames</link>
to return the list of objects requested.
</descr>
<errors>
</errors>
<seealso>
<link id="TSqlObjectIndentifier"/>
<link id="#fcl.sqldb.TSQLConnection.GetObjectNames"/>
</seealso>
</element>

<!-- class Visibility: default -->
<element name="TSqlObjectIdentifier">
<short>SQL Identifier properties object</short>
<descr>
<var>TSQLObjectIdentifier</var> is a class that represents an SQL identifier in a database.
It has 2 parts: the schema name and the object name.
</descr>
<seealso>
<link id="TSqlObjectIndentifierList"/>
<link id="#fcl.sqldb.TSQLConnection.GetObjectNames"/>
</seealso>
</element>


<!-- constructor Visibility: public -->
<element name="TSqlObjectIndentifier.Create">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>

<!-- argument Visibility: default -->
<element name="TSqlObjectIndentifier.Create.ACollection">
<short>Collection which the object belongs to</short>
</element>

<!-- argument Visibility: default -->
<element name="TSqlObjectIndentifier.Create.AObjectName">
<short>Object name.</short>
</element>

<!-- argument Visibility: default -->
<element name="TSqlObjectIndentifier.Create.ASchemaName">
<short>Schema in which object is defined.</short>
</element>

<!-- property Visibility: public -->
<element name="TSqlObjectIdentifier.SchemaName">
<short>Schema name </short>
<descr>
<var>SchemaName</var> is the name of the schema in which the object is defined.
This is only set if the database actually supports schemas, for other databases,
it is empty.
</descr>
<seealso>
<link id="TSqlObjectIndentifierList"/>
<link id="#fcl.sqldb.TSQLConnection.GetObjectNames"/>
<link id="TSqlObjectIndentifier.ObjectName"/>
</seealso>
</element>

<!-- property Visibility: public -->
<element name="TSqlObjectIndentifier.ObjectName">
<short>Name of the object in the database</short>
<descr>
<var>ObjectName</var> is the name of the object in the database.
If the database supports schemas, then it must be combined with the
<link id="TSQLObjectIdentifier.SchemaName">SchemaName</link>
property in order to create a unique name for the object.
</descr>
<seealso>
<link id="TSqlObjectIndentifierList"/>
<link id="#fcl.sqldb.TSQLConnection.GetObjectNames"/>
<link id="TSqlObjectIndentifier.SchemaName"/>
</seealso>
</element>

<element name="TSqlObjectIndentifierList">
<short/>
<descr/>
<seealso/>
</element>

<!-- function Visibility: public -->
<element name="TSqlObjectIdentifierList.AddIdentifier">
<short>Add an identifier to the list</short>
<descr>
<p>
<var>AddIdentifier</var> adds an identifier to the list with schema
name <var>ASchemaName</var> and object name <var>AObjectName</var>.
It returns the new identifier object. Both arguments are optional,
their default value is the empty string.
</p>
<p>
No checking on duplicate entries is performed.
</p>
</descr>
<seealso>
<link id="TSqlObjectIdentifier"/>
</seealso>
</element>

<!-- function result Visibility: public -->
<element name="TSqlObjectIdentifierList.AddIdentifier.Result">
<short>A new <var>TSQLObjectIdentifier</var> object</short>
</element>

<!-- argument Visibility: default -->
<element name="TSqlObjectIdentifierList.AddIdentifier.AObjectName">
<short>The value for the <var>ObjectName</var> property</short>
</element>

<!-- argument Visibility: default -->
<element name="TSqlObjectIdentifierList.AddIdentifier.ASchemaName">
<short>The value for the <var>SchemaName</var> property</short>
</element>

<!-- property Visibility: public -->
<element name="TSqlObjectIdentifierList.Identifiers">
<short>Indexed access to all identifiers in the list.</short>
<descr>
<var>Identifiers</var> gives indexed access to all <link id="TSQLObjectIdentifier"/> objects in the list.
Valid indexes run from 0 to <var>Count-1</var>. It is the default property of the list class.
</descr>
<seealso>
<link id="TSQLObjectIdentifierList.AddIdentifier"/>
</seealso>
</element>

<!-- argument Visibility: public -->
<element name="TSqlObjectIdentifierList.Identifiers.Index">
<short>Numerical index to the list</short>
</element>

<!-- uses unit Visibility: default -->
<element name="classes">
<short>Collections</short>
</element>

<!-- uses unit Visibility: default -->
<element name="sysutils">
<short>Various conversion and formatting routines</short>
</element>

<!-- function Visibility: public -->
<element name="TSqlObjectIndentifier.FullName">
<short>Return the full name of the object</short>
<descr>
<var>FullName</var> returns the name of the object, prepended with the schema name if there is one. 
Both parts are separated by a dot (.) character.
</descr>
<seealso>
<link id="TSqlObjectIndentifier.SchemaName"/>
<link id="TSqlObjectIndentifier.ObjectName"/>
</seealso>
</element>

<!-- function result Visibility: default -->
<element name="TSqlObjectIndentifier.FullName.Result">
<short>The fully qualified name of the object</short>
</element>

</module> <!-- sqltypes -->

</package>
</fpdoc-descriptions>
