DK for Delphi | GisDb.TGIS_DbAbstract | Classes | Constructors | Fields | Methods | Properties | Events
Abstract base class for database engines used by SQL-backed GIS layers.
// Delphi type TGIS_DbAbstract = class( TGIS_ObjectDisposable ) end;
// C++ Builder class PASCALIMPLEMENTATION TGIS_DbAbstract : public TGIS_ObjectDisposable { };
| Name | Visibility | Description | |
|---|---|---|---|
| Create | public | Creates an abstract database engine instance and initializes default SQL dialect and provider state. | |
| Name | Visibility | Description | |
|---|---|---|---|
| FDialect | protected | SQL dialect name. | |
| FFullSafeParam | protected | True to return a safe parameter prefix with the parameter name; otherwise only the prefix is returned. | |
| FGeometryType | protected | Internal geometry storage subtype for the current provider. | |
| FiCodePage | protected | Cached code page value used for optimization. | |
| FiJoinCodePage | protected | Cached join code page value used for optimization. | |
| FInBatchMode | protected | True, if batch mode is enabled. | |
| FisDb2 | protected | True if the current SQL dialect is IBM DB2. | |
| FisInformix | protected | True if the current SQL dialect is Informix. | |
| FIsInitializedProvider | protected | True if the database provider has been initialized. | |
| FisInterbase | protected | True if the current SQL dialect is InterBase. | |
| FIsJDBC | protected | True if JDBC (Java Database Connectivity) is used. | |
| FisMsJet | protected | True if the current SQL dialect is Microsoft Jet. | |
| FisMsSql | protected | True if the current SQL dialect is Microsoft SQL Server. | |
| FisMySql | protected | True if the current SQL dialect is MySQL. | |
| FisOracle | protected | True if the current SQL dialect is Oracle. | |
| FisPostgreSql | protected | True if the current SQL dialect is PostgreSQL. | |
| FisSqlite | protected | True if the current SQL dialect is SQLite. | |
| FisSybase | protected | True if the current SQL dialect is Sybase. | |
| FMultiUserMode | protected | Multiuser mode for database access and update behavior. | |
| FNameMaxLength | protected | Maximum length allowed for SQL object names. | |
| FOnSQLExecute | protected | Event handler called before an SQL command is executed. | |
| FParameterPrefix | protected | SQL parameter prefix used by the current provider. | |
| FReuseQuery | protected | If True, reuse opened query, otherwise open a new query. | |
| FRowsetSize | protected | Number of rows fetched in batches from the cursor database (default 0). | |
| FUseTextParameters | protected | Use text parameters. | |
| options | protected | Engine options. | |
| Name | Visibility | Description | |
|---|---|---|---|
| cursorClose | public | Free a cursor allocated by cursorOpen(). | |
| cursorOpen | public | Allocate a new cursor. | |
| FinalizeProvider | public | Finalizes the database provider backend. | |
| getLastCursor | public | Get last opened cursor index. | |
| GetLastErrorMessage | public | Returns the last database provider error message. | |
| InitializeProvider | public | Initializes the database provider backend. | |
| PreRecognize | public | Checks whether the database provider can recognize and open a layer configuration for the specified path, storage, and SQL type. | |
| safeParam | public | Get a safe parameter. | |
| sqlBaseFolder | public | Return base folder for a layer. | |
| sqlBindField | public | Obtain a bind number for a given field name. | |
| sqlBuild | public | Build a new SQL layer. | |
| sqlConnect | public | Opens a database connection using the provider-specific SQL parameters. | |
| sqlCreateFunction | public | Create a function on the database side. | |
| sqlDisconnect | public | Close database connection. | |
| sqlExec | public | Executes an SQL command that does not return a cursor. | |
| sqlGetBindedField | public | Get the value of a binded field for the current shape from the database. | |
| sqlGetParams | public | Get a parameters list. | |
| sqlInitialize | public | Initializes SQL dialect flags and engine options from connection parameters and dialect definitions. | |
| sqlLastInsertId | public | Get last inserted record id. | |
| sqlPathAbsolute(String; String; Boolean) | public | Resolves potentially embedded database path in a connection string into an absolute path. | |
| sqlPathAbsolute(String; String; Char; Boolean) | public | Resolves potentially embedded database path in a connection string into an absolute path. | |
| sqlPathAbsolute(String; String; Char; String; Char) | public | Resolves a file path embedded in a connection string into an absolute path. | |
| sqlQueryClose | public | Closes the query cursor. | |
| sqlQueryEof | public | Tests whether the query cursor reached EOF and closes the query when EOF is reached. | |
| sqlQueryGeometryIsText | public | Test whether geometry data is stored as text. | |
| sqlQueryGetBlob | public | Get blob data from the query. | |
| sqlQueryGetField | public | Get a field from the query by field name. | |
| sqlQueryGetFieldById | public | Get a field from the query by field index. | |
| sqlQueryGetFieldIndex | public | Get field index from query. | |
| sqlQueryGetGeomObj | public | Get a geometry object from the query. | |
| sqlQueryGetGeomPtr | public | Get geometry data from the query as a pointer. | |
| sqlQueryGetGeomVAR | public | Get geometry data from the query as an OleVariant value. | |
| sqlQueryGetGEOUID(Integer; Integer) | public | Get a GEO.UID value from the query by field index. | |
| sqlQueryGetGEOUID(String; Integer) | public | Get a GEO.UID value from the query by field name. | |
| sqlQueryGetSHAPETYPE | public | Get a SHAPETYPE value from the query. | |
| sqlQueryGetXMIN | public | Get an XMIN value from the query. | |
| sqlQueryGetYMIN | public | Get a YMIN value from the query. | |
| sqlQueryMoveFirst | public | Move to first record of query. | |
| sqlQueryMoveNext | public | Move to next record of query. | |
| sqlQueryNameGEOUID | public | Get the GEO.UID field value from the query. | |
| sqlQueryOpen | public | Opens a query and closes any previously active query for the same cursor. | |
| sqlQueryReset | public | Resets the current SQL query for the specified cursor. | |
| sqlQueryStructure | public | Fill the current layer structure based on the query. | |
| sqlQueryUnPrepareGetGeom | public | Unprepare geometry access. | |
| sqlTableAppend | public | Append a new record into the table. | |
| sqlTableClose | public | Close the table. | |
| sqlTableCreateParam | public | Create a table parameter. | |
| sqlTableEof | public | Tests whether the table cursor reached EOF and closes the table when EOF is reached. | |
| sqlTableExec | public | Execute opened table command. | |
| sqlTableGetField | public | Get a field from the table. | |
| sqlTableGetParam | public | Get a parameter value from the table. | |
| sqlTableOpenRead | public | Opens a table for read access using the provided filter query. | |
| sqlTableOpenWrite | public | Opens a table for write access using the provided filter query. | |
| sqlTablePost | public | Update the table (after any change). | |
| sqlTablePrepared | public | Returns whether the table is prepared for inserting a new record. | |
| sqlTableSetBlob | public | Set blob data in the table. | |
| sqlTableSetField | public | Set a field value in the table. | |
| sqlTableSetGeometry(Integer; String; OleVariant; TGIS_MemoryStream) | public | Set geometry data in the table. | |
| sqlTableSetGeometry(Integer; String; TObject) | public | Set geometry data in the table. | |
| sqlTransactGlobalUpdateCommit | public | Commits the current global transaction. | |
| sqlTransactGlobalUpdateStart | public | Starts a global transaction for grouped updates. | |
| sqlTransactRestructCommit | public | Commits the current restructure transaction. | |
| sqlTransactRestructStart | public | Starts a restructure transaction. | |
| sqlTransactRollback | public | Rollback global transaction. | |
| sqlTransactUpdateCommit | public | Commits the current update transaction. | |
| sqlTransactUpdateStart | public | Starts an update transaction. | |
| sqlUpdateStart | public | Start update operations for the table. | |
| Name | Visibility | Description | |
|---|---|---|---|
| CurrentSQLDialect | public | Current SQL dialect name. | |
| EngineOptions | public | Engine option flags controlling database provider behavior. | |
| FullSafeParam | public | True to return the safe parameter prefix together with the parameter name; False to return only the prefix. | |
| GeometryType | public | Internal geometry type. | |
| iCodePage | public | Code page used for string conversion. | |
| iJoinCodePage | public | Code page used for join field string conversion. | |
| InBatchMode | public | True, if batch mode is enabled for fast inserts. | |
| IsDb2 | public | True if the current SQL dialect is DB2. | |
| IsInformix | public | True if the current SQL dialect is Informix. | |
| IsInterbase | public | True if the current SQL dialect is InterBase. | |
| IsJDBC | public | True if JDBC (Java Database Connectivity) is used. | |
| IsMsJet | public | True if the current SQL dialect is Microsoft Jet. | |
| IsMsSql | public | True if the current SQL dialect is Microsoft SQL Server. | |
| IsMySql | public | True if the current SQL dialect is MySQL. | |
| IsOracle | public | True if the current SQL dialect is Oracle. | |
| IsPostgreSql | public | True if the current SQL dialect is PostgreSQL. | |
| IsProviderInitialized | public | True if the provider has been initialized. | |
| IsSqlite | public | True if the current SQL dialect is SQLite. | |
| IsSybase | public | True if the current SQL dialect is Sybase. | |
| MultiUserMode | public | Multiuser mode. | |
| NameMaxLength | public | Maximum SQL identifier name length. | |
| ParameterPrefix | public | SQL parameter prefix used when formatting parameterized commands. | |
| RowsetSize | public | Number of rows fetched from the database cursor in each batch operation; 0 uses provider defaults. | |
| UseTextParameters | public | Use text parameters. | |
| Name | Visibility | Description | |
|---|---|---|---|
| SQLExecuteEvent | published | Fired before an SQL statement is executed. | |
By default, if a query sql doesn't change, an existing dataset is reused. To always make a recreation of a query reflecting changes in a table that was modified manually in the database, REUSEQUERY options can be used either by :