Where appropriate, SQL-DMO member functions returning a reference on a SQLObjectList object are implemented to return a reference on a typed list of objects. For example, the ListIndexedColumns member function, returning a SQLObjectList object enumerating the columns on which a Microsoft® SQL Server™ index is defined, uses the syntax:
HRESULT ListIndexedColumns(LPSQLDMOCOLUMNLIST* ppList);
That the list object returned contains only SQL-DMO Column objects is visible from the function prototype, and for the C/C++ application developer, the typed list forces a specific type recognition and aids in program readability.
SQL-DMO defines the following object list types.
Type | SQLObjectList object contains |
---|---|
LPSQLDMODBOBJECTLIST | DBObject objects |
LPSQLDMOPERMISSIONLIST | Permission objects |
LPSQLDMOCONFIGVALUELIST | ConfigValue objects |
LPSQLDMOBACKUPDEVICELIST | BackupDevice objects |
LPSQLDMOCOLUMNLIST | Column objects |
LPSQLDMOUSERDEFINED DATATYPELIST |
UserDefinedDatatype objects |
LPSQLDMOSTORED PROCEDURELIST |
StoredProcedure objects |
LPSQLDMOLOGINLIST | Login objects |
LPSQLDMOUSERLIST | User objects |
LPSQLDMODATABASELIST | Database objects |
LPSQLDMOKEYLIST | Key objects |