SQLTables
Применимо к:SQL ServerAzure SQL DatabaseAzure Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)
SQLTables можно выполнять на статичном серверном курсоре. Попытка выполнить SQLTables на обновляемом курсоре (динамический или набор ключей) вернет SQL_SUCCESS_WITH_INFO указывает, что тип курсора был изменен.
SQLTables сообщает таблицы из всех баз данных, если параметр CatalogName SQL_ALL_CATALOGS, а все остальные параметры содержат значения по умолчанию (указатели NULL).
Чтобы сообщить о доступных каталогах, схемах и типах таблиц, SQLTables специально использует пустые строки (указатели байтов нулевой длины). Пустые строки не являются значениями по умолчанию (указатели NULL).
Драйвер ODBC для собственного клиента SQL Server поддерживает отчеты о таблицах на связанных серверах, принимая двух частей имя параметра CatalogName : Linked_Server_Name.Catalog_Name.
SQLTables возвращает сведения о любых таблицах, имена которых соответствуют TableName и принадлежат текущему пользователю.
Функция SQLTables и возвращающие табличное значение параметры
Если атрибут инструкции SQL_SOPT_SS_NAME_SCOPE имеет значение SQL_SS_NAME_SCOPE_TABLE_TYPE, а не значение по умолчанию SQL_SS_NAME_SCOPE_TABLE, SQLTable возвращает сведения о типах таблиц. Значение TABLE_TYPE, возвращаемое для типа таблицы в столбце 4 результированного набора, возвращаемого SQLTables, — TABLE TYPE. Дополнительные сведения о SQL_SOPT_SS_NAME_SCOPE см. в разделе SQLSetStmtAttr.
Таблицы, представления и синонимы имеют общее пространство имен, отличающееся от пространства имен табличных типов. Хотя таблица и представление не могут иметь одинаковое имя, в одном каталоге и схеме можно иметь таблицу и табличный тип с одинаковым именем.
Дополнительные сведения о табличном значении параметров см. в разделе "Параметры с табличным значением" (ODBC).
пример
// Get a list of all tables in the current database.
SQLTables(hstmt, NULL, 0, NULL, 0, NULL, 0, NULL,0);
// Get a list of all tables in all databases.
SQLTables(hstmt, (SQLCHAR*) "%", SQL_NTS, NULL, 0, NULL, 0, NULL,0);
// Get a list of databases on the current connection's server.
SQLTables(hstmt, (SQLCHAR*) "%", SQL_NTS, (SQLCHAR*)"", 0, (SQLCHAR*)"",
0, NULL, 0);
См. также
Функция SQLTables
Подробные сведения о реализации API-интерфейсов ODBC
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по