Kniga-Online.club

Андрей Попов - Windows Script Host для Windows 2000/XP

Читать бесплатно Андрей Попов - Windows Script Host для Windows 2000/XP. Жанр: Программное обеспечение издательство -, год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

В Connect.Execute(SSQL);

}

//Копирование данных из XML-файла в таблицу Phone

function XMLToBase() {

В var XML,Root,NomRec,CurrNode,i;

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

В XML = WScript.CreateObject("Msxml.DOMDocument");

 //Загружаем XML-документ из файла

В XML.load(PathBook);

 //Сохраняем в переменной Root ссылку на корневой элемент документа

В Root=XML.documentElement;

 //Перебираем все дочерние элементы первого уровня вложенности

 //для корневого элемента

В for (i=1; i<=Root.childNodes.length-1;i++) {

  //Выделяем в коллекции XML-элементов i-й элемент

В  CurrNode=Root.childNodes.item(i);

  //Вставляем новую запись в таблицу Phone

В  PersonToTable(CurrNode);

В }

}

//Основная запускная функция

function Main() {

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

В WshShell = WScript.CreateObject("WScript.Shell");

 //Путь к XML-файлу с данными

В PathBook=WshShell.CurrentDirectory+"\book.xml";

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

В Connect=WScript.CreateObject("ADODB.Connection");

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

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

В SConnect="DSN=PhoneDS";

 //Устанавливаем связь с БД

В Connect.Open(SConnect);

 //Копируем данные из XML-файла в таблицу БД

В XMLToBase();

 //Выводим сообщение об окончании переноса данных

 WshShell.Popup("Данные из XML-файла в таблицу перенесены!", 0,

  "Работа с базой данных",vbInformation+vbOkOnly);

}

/*******************  Начало  **********************************/

Main();

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

Просмотр записей в таблице 

После того как мы произвели копирование записной книжки в таблицу Phone.dbf, возникает естественное желание просмотреть из сценария введенные записи. Напишем для этой цели сценарий ListRecords1.js, результат работы которого представлен на рис. 9.10.

Рис. 9.10. Записи из таблицы Phone

Основным объектом, позволяющим получить доступ к записям таблицы, является Recordset, который представляет собой набор записей, полученных, например, в результате выполнения SQL-запроса. Создается объект Recordset следующим образом (экземпляром объекта будет переменная RS):

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

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

Все строки из таблицы Phone выбираются с помощью следующего SQL- запроса:

SELECT * from Phone

Этот запрос записывается в переменную SSource:

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

SSource = "SELECT * FROM Phone";

Для занесения в RS требуемого набора записей используется метод Open(), в качестве параметров которого указываются две строки. В первой из них должен содержаться SQL-запрос (переменная SSource), а во второй — параметры соединения с базой данных (в нашем случае это переменная SConnect, в которой записан нужный DSN):

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

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

SConnect = "DSN=PhoneDS";

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

RS.Open(SSource, SConnect);

Текст, который будет в конце сценария выведен на экран, будет храниться в переменной SOut. Первоначально в эту переменную записываем заголовок:

SOut="BCE Р—РђРџРРЎР РР— ТАБЛРЦЫ phone.dbf:n";

Для перемещения по записям набора RS используется так называемый курсор, который после выполнения метода Open() автоматически устанавливается на первую запись. Перебор всех записей производится в цикле while, условием выхода из которого является перемещение курсора за последнюю запись таблицы (при этом свойство EOF объекта Recordset станет равным True).

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

while (!RS.EOF) {

 …

}

Для доступа к полям текущей записи используется коллекция Fields, содержащая значения всех полей; чтобы получить значение конкретного поля, нужно указать в круглых скобках имя этого поля в кавычках, скажем, RS.Fields("Name"). Метод MoveNext() выполняет переход к следующей записи таблицы:

while (!RS.EOF) {

 //Формируем строку со значениями трех полей, которые разделены

 //символами табуляции

В s=RS.Fields("LastName")+"t"+RS.Fields("Name")+"t"+ RS.Fields("Phone");

 //В конце строки ставим символ перевода строки

В s+="n";

 //Добавляем сформированную строку к переменной SOut

В SOut+=s;

 //Переходим к следующей записи

В RS.MoveNext();

}

Закрывается объект Recordset с помощью метода Close():

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

RS.Close();

После этого сформированный в переменной sout текст выводится на экран:

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

WScript.Echo(SOut);

Полностью сценарий ListRecords1.js приведен в листинге 9.2.

Листинг 9.2. Просмотр записей таблицы

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

/* РРјСЏ: ListRecords1.jsВ В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В  */

/* Язык: JScript                                                   */

/* Описание: Просмотр записей из таблицы базы данных               */

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

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

var

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

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

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

Перейти на страницу:

Андрей Попов читать все книги автора по порядку

Андрей Попов - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


Windows Script Host для Windows 2000/XP отзывы

Отзывы читателей о книге Windows Script Host для Windows 2000/XP, автор: Андрей Попов. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*