getObjectNames method

int getObjectNames(
  1. TSchemaType aSchemaType,
  2. TSqlObjectIdentifierList aList
)

Implementation

int getObjectNames(TSchemaType aSchemaType, TSqlObjectIdentifierList aList) {
  var result = 0;
  if (_sqlTransaction == null) {
    databaseError(SErrConnTransactionnSet);
  }
  final qry = TCustomSQLQuery(null);
  try {
    qry.transaction = _sqlTransaction;
    qry.database = this;
    qry.parseSQL = false;
    qry.setSchemaInfo(
        aSchemaType, tSchemaObjectNames[aSchemaType.index], "");
    qry.open();
    final f =
        qry.findField(tSchemaObjectNames[TSchemaType.stSchemata.index]);
    while (!qry.eof) {
      var vSchemaName = '';
      if (f != null) {
        vSchemaName = f.asString;
      }
      final vObjectName = qry.fieldByName(qry._schemaObjectName).asString;
      aList.addIdentifier(vObjectName, vSchemaName);
      qry.next();
      result++;
    }
  } finally {
    qry.free();
  }
  return result;
}