mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-03 18:10:17 +02:00
fcl-db: odbc: add support for stIndexes for database metadata retrieval SetSchemaInfo()
git-svn-id: trunk@31225 -
This commit is contained in:
parent
8600940c26
commit
3d6a6512ad
@ -757,7 +757,7 @@ begin
|
|||||||
|
|
||||||
// prepare statement
|
// prepare statement
|
||||||
ODBCCursor.FQuery:=Buf;
|
ODBCCursor.FQuery:=Buf;
|
||||||
if not (ODBCCursor.FSchemaType in [stTables, stSysTables, stColumns, stProcedures]) then
|
if not (ODBCCursor.FSchemaType in [stTables, stSysTables, stColumns, stProcedures, stIndexes]) then
|
||||||
begin
|
begin
|
||||||
ODBCCheckResult(
|
ODBCCheckResult(
|
||||||
SQLPrepare(ODBCCursor.FSTMTHandle, PChar(buf), Length(buf)),
|
SQLPrepare(ODBCCursor.FSTMTHandle, PChar(buf), Length(buf)),
|
||||||
@ -855,6 +855,7 @@ begin
|
|||||||
stSysTables : Res:=SQLTables (ODBCCursor.FSTMTHandle, nil, 0, nil, 0, nil, 0, TABLE_TYPE_SYSTEM, length(TABLE_TYPE_SYSTEM) );
|
stSysTables : Res:=SQLTables (ODBCCursor.FSTMTHandle, nil, 0, nil, 0, nil, 0, TABLE_TYPE_SYSTEM, length(TABLE_TYPE_SYSTEM) );
|
||||||
stColumns : Res:=SQLColumns(ODBCCursor.FSTMTHandle, nil, 0, nil, 0, @ODBCCursor.FQuery[1], length(ODBCCursor.FQuery), nil, 0 );
|
stColumns : Res:=SQLColumns(ODBCCursor.FSTMTHandle, nil, 0, nil, 0, @ODBCCursor.FQuery[1], length(ODBCCursor.FQuery), nil, 0 );
|
||||||
stProcedures: Res:=SQLProcedures(ODBCCursor.FSTMTHandle, nil, 0, nil, 0, nil, 0 );
|
stProcedures: Res:=SQLProcedures(ODBCCursor.FSTMTHandle, nil, 0, nil, 0, nil, 0 );
|
||||||
|
stIndexes : Res:=SQLStatistics(ODBCCursor.FSTMTHandle, nil, 0, nil, 0, @ODBCCursor.FQuery[1], length(ODBCCursor.FQuery), SQL_INDEX_ALL, SQL_QUICK);
|
||||||
else Res:=SQLExecute(ODBCCursor.FSTMTHandle); //SQL_NO_DATA returns searched update or delete statement that does not affect any rows
|
else Res:=SQLExecute(ODBCCursor.FSTMTHandle); //SQL_NO_DATA returns searched update or delete statement that does not affect any rows
|
||||||
end; {case}
|
end; {case}
|
||||||
|
|
||||||
@ -1531,7 +1532,7 @@ end;
|
|||||||
|
|
||||||
function TODBCConnection.GetSchemaInfoSQL(SchemaType: TSchemaType; SchemaObjectName, SchemaObjectPattern: string): string;
|
function TODBCConnection.GetSchemaInfoSQL(SchemaType: TSchemaType; SchemaObjectName, SchemaObjectPattern: string): string;
|
||||||
begin
|
begin
|
||||||
if SchemaType in [stTables, stSysTables, stColumns, stProcedures] then
|
if SchemaType in [stTables, stSysTables, stColumns, stProcedures, stIndexes] then
|
||||||
begin
|
begin
|
||||||
if SchemaObjectName<>'' then
|
if SchemaObjectName<>'' then
|
||||||
Result := SchemaObjectName
|
Result := SchemaObjectName
|
||||||
|
Loading…
Reference in New Issue
Block a user