On Tue, 17 Apr 2012, Reinier Olislagers wrote:

In sqldb, this:

type TSchemaType = (stNoSchema, stTables, stSysTables, stProcedures,
stColumns, stProcedureParams, stIndexes, stPackages);
is used in the GetSchemaInfoSQL function:

I noticed stIndexes, stProcedureParams and stPackages do not seem to be
used in the current sqldb connectors in packages\fcl-db\src\sqldb\ and
below.

The others are used in GetSchemaInfoSQL to get an SQL command that
returns the names of the objects (tables etc): e.g. tables:
Firebird:
s := 'select '+
                         'rdb$relation_id          as recno, '+
                         '''' + DatabaseName + ''' as catalog_name, '+
                         '''''                     as schema_name, '+
                         'rdb$relation_name        as table_name, '+
                         '0                        as table_type '+
                       'from '+
                         'rdb$relations '+
                       'where '+
                         '(rdb$system_flag = 0 or rdb$system_flag is
null) ' + // and rdb$view_blr is null
                       'order by rdb$relation_name';
MS SQL Server:
Result := format(SCHEMA_QUERY, ['table_name','U']);

Does anybody know what stIndexes, stProcedureParams and stPackages
should return and when they would be used?

stIndexes: get a list of indexes from a table.
stPRocedureParams: get the parameters of a stored procedure
stPackages: list packages (Oracle and Firebird)


What happens e.g. with indexes - that IIRC can have unique names per
database (Firebird,...) or per table (MS SQL Server,...)?

I am trying to see if having a list of indexes in the database
connectors would help with the data dictionary
(packages\fcl-db\src\datadict)...

It would help, yes.

Michael.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to