Получение информации о полях и записях таблицы

Получение информации о полях и записях таблицы

Иногда бывает необходимо определить число и названия полей или подсчитать общее число записей в таблице. Приведенный в листинге 9.4 сценарий TableInfo.js выводит на экран диалоговое окно, где приведены названия всех полей и общее количество записей таблицы Phone.dbf (рис. 9.11).

Рис. 9.11. Информация о полях и записях таблицы Phone

В TableInfo.js для доступа к таблице Phone создается объект Recordset:

//Формируем SQL-запрос к таблице Phone

SSource = "SELECT * FROM Phone";

//Формируем строку с параметрами соединения с БД

//(указываем нужный DSN)

SConnect = "DSN=PhoneDS";

//Создаем объект Recordset

RS=WScript.CreateObject("ADODB.Recordset");

Перед открытием набора записей с помощью метода Open() нужно установить свойство CursorType объекта Recordset равным 3 (при этом создается статическая копия таблицы, что позволяет получить информацию о полях и записях):

//Задаем статический курсор

RS.CursorType = 3;

//Открываем набор записей - результат запроса

RS.Open(SSource, SConnect);

После этого в коллекции Fields будут содержаться все поля набора записей Recordset, а в свойстве RecordCount — число записей в этом наборе:

//Определяем число полей в наборе данных

RS_NomFields = RS.Fields.Count;

//Определяем число записей в наборе данных

RS_NomRecs = RS.RecordCount;

В переменной SOut будет формироваться текст для вывода на экран:

SOut="ТАБЛИЦА Phone СОДЕРЖИТ "+NomFields+" ПОЛЯ(ЕЙ): ";

Для получения списка полей мы перебираем в цикле for все элементы коллекции Fields:

//Перебираем все поля набора данных RS

for (i=0; i<RS.Fields.Count; i++) {

 //Формируем строку с номером и именем поля таблицы

 SOut+"Поле N "+i+": "+RS.Fields(i).Name+" ";

}

После завершения цикла к переменной SOut добавляется информация о количестве записей, набор записей RS закрывается и значение переменной SOut выводится на экран:

SOut+=" И "+NomRecs+" ЗАПИСЬ(ЕЙ)";

//Закрываем объект Recordset

RS.Close();

//Выводим на экран строку SOut

WScript.Echo(SOut);

Листинг 9.4. Получение информации о полях таблицы

/*******************************************************************/

/* Имя: TableInfo.js                                               */

/* Язык: JScript                                                   */

/* Описание: Получение информации о полях таблицы                  */

/*******************************************************************/

//Объявляем переменные

var

 RS,       //Экземпляр объекта Recordset

 SSource,  //Строка с текстом SQL-запроса к БД

 SConnect, //Строка с параметрами соединения с БД

 SOut,     //Строка, в которой сохраняется выходная информация

 NomField, //Количество полей в таблице

 NomRecs,  //Количество записей в таблице

 i;

//Формируем SQL-запрос к таблице Phone

SSource = "SELECT * FROM Phone";

//Формируем строку с параметрами соединения с БД

//(указываем нужный DSN)

SConnect = "DSN=PhoneDS";

//Создаем объект Recordset

RS=WScript.CreateObject("ADODB.Recordset");

//Задаем статический курсор

RS.CursorType = 3;

//Открываем набор записей-результат запроса

RS.Open(SSource,SConnect);

//Определяем число полей в наборе данных RS

NomFields = RS.Fields.Count;

//Определяем число записей в наборе данных RS

NomRecs = RS.RecordCount;

SOut="ТАБЛИЦА Phone СОДЕРЖИТ "+NomFields+" ПОЛЯ(ЕЙ): ";

//Перебираем все поля набора данных RS

for (i=0; i<RS.Fields.Count; i++) {

 //Формируем строку с номером и именем поля таблицы

 SOut+="Поле N "+i+": "+RS.Fields(i).Name+" ";

}

SOut+=" И "+NomRecs+" ЗАПИСЬ(ЕЙ)";

//Закрываем объект Recordset

RS.Close();

//Выводим на экран строку SOut

WScript.Echo(SOut);

/*************  Конец *********************************************/

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Таблицы информации о программе

Из книги Технология Windows Installer. Часть I. Обзор возможностей автора Алифанов Андрей

Таблицы информации о программе Таблицы этой группы содержат важную информацию о пакете инсталляции, используемую на протяжении всего процесса инсталляции.Состоит эта группа из пяти таблиц: Имя таблицы Краткое описание Property В этой таблице хранятся все свойства 1


Общие сведения об учетных записях

Из книги Компьютер на 100. Начинаем с Windows Vista автора Зозуля Юрий

Общие сведения об учетных записях Для выполнения любого действия в среде Windows Vista нужно получить на это право от операционной системы; если пользователь попытается выполнить операцию, на которую у него нет права, он получит сообщение с отказом (рис. 8.2).Для работы


Еще раз об учетных записях пользователей

Из книги Windows Vista без напряга автора Жвалевский Андрей Валентинович

Еще раз об учетных записях пользователей Об учетных записях пользователей уже упоминалось: если компьютером пользуется несколько человек, можно сделать так, что каждый из них будет работать, совершенно не мешая остальным. У разных пользователей могут быть разные права


4.1. Получение структурированной информации из базы данных

Из книги Программирование на языке Пролог для искусственного интеллекта автора Братко Иван

4.1. Получение структурированной информации из базы данных Это упражнение развивает навыки представления структурных объектов данных и управления ими. Оно показывает также, что Пролог является естественным языком запросов к базе данных.База данных может быть


Получение информации от пользователя

Из книги VBA для чайников автора Каммингс Стив

Получение информации от пользователя Если вам нужна от пользователя более конкретная информация, не укладывающаяся в рамки выбора из трех кнопок, используйте функцию Input Box. Вот ее формальная синтаксическая конструкция, из которой удалены некоторые необязательные


Глава 16 Получение итоговой информации

Из книги Компьютер для бухгалтера автора Филатова Виолетта

Глава 16 Получение итоговой информации В данной главе рассматриваются способы формирования различных отчетных документов на основании операций и документов, внесенных в журнал операций.• Управление бухгалтерскими итогами• Отчеты• Налоговый учет• Пример работы в


Глава 27 Получение итоговой информации

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

Глава 27 Получение итоговой информации В этой главе рассматриваются вопросы, связанные с формированием отчетов. Многочисленные отчеты являются хорошими помощниками, помогая бухгалтеру взглянуть на счет с разных сторон.Несомненным достоинством программы является


Получение информации о базе данных

Из книги Linux программирование в примерах автора Роббинс Арнольд

Получение информации о базе данных После того как вы создали базу данных и подтвердили создание (commit), вы можете в isql отобразить ее детали, используя команду SHOW DATABASE:SQL> SHOW DATABASE;Database: /opt/databases/mydatabase.fdbOwner: ADMINUSRPAGE_SIZE 8192Number of DB pages allocated = 176Sweep interval = 20000Forced Writes are ONTransaction - oldest =


5.4. Получение информации о файлах

Из книги Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil автора Ковязин Алексей Николаевич

5.4. Получение информации о файлах Чтение каталога для получения имен файлов лишь половина дела. Получив имя файла, нужно знать, как получить остальную информацию, связанную с файлом, такую, как тип файла, права доступа к нему, владельца и


Использование NULL в полях внешнего ключа

Из книги автора

Использование NULL в полях внешнего ключа В полях, на основе которых создается внешний ключ, допускается применение NULL-полей. Эта возможность добавлена для разрешения взаимных ссылок. Например, еспи есть две таблицы, ссылающиеся друг на друга с помощью внешних ключей Ьсли


15.8. Получение информации об отправителе

Из книги автора

15.8. Получение информации об отправителе На рис. 14.4 мы показали другой тип информации, передаваемой через доменный сокет Unix в виде вспомогательных данных: информацию об отправителе, которая передается с помощью структуры cmsgcred, определяемой путем включения заголовочного