Программирование >>  Руководство по созданию web приложений 

1 ... 87 88 89 [ 90 ] 91 92 93 ... 141


Глобальные определения

Для того чтобы использовать шаблоны предназначенные для работы с

объектами OLE DB, мы включили в исходный текст нашего приложения файл

Так как наша программа выводит результаты на консоль и при этом пользуется манипуляторами ввода/вывода, мы включили файлы и

flincludi ttinclucV

Кроме того, для применения .VIL необходимо подключить пространство имен

std:

using std;

В области глобальных определений мы расположили класса

привязки переменных к набору записей tabClients:

class tabClients I

public:

TCHAR .. ,

TCHAR

TCHAR

PETIMESTAMP - -

Ш illntji))

Ш Entill)

0 назначении и внутреннем усiia>aaiaa этого класса мы рассказывали ранее. Помимо этого, в области глобальных определений мы три объекта

Программа ATLOLEDB

Для демонстрации простоты объектного интерфейса OLE DB с

библиотеки шаблонов ATE мы подготовили консольную программу AILOLliDB, Она решает ту же задачу, что и предыдущая, рассмотреиная в отображает содержимое нескольких полей таблицы регистрации посетителей Интернет-магазина clients.

Полный исходный текст программы ATEOLEDB Вы найдете в листинге 5-2.

Листинг 5-2 хранится в файле ciiStottolectbtetlolecib.cpp на прилагаемом к книге компакт-диске.



CDataSource

- > omd;

Объект dsDSN используется соединения с источником данных,

объект sSession нужен для образования сеанса, а объект cmd - для выдачи команды и обработки результата се выполнения.

Функция main

Наша программа настолько проста, что все свои действия она . в рам-

ках единственной функции lain,

В начале своей работы программа выполняет СОМ, вызы-

вая для этого функцию CoInitialize(NULL);

Заметим, что освобождение поэтому

при использовании ATL CoUninitialize вызывать не надо

(и нельзя).

После инициализации пата программа открывает источник данных и сеанс:

= . . . ), Bookstore , dbo , ):

return 1;

return 1;

Б случае возникновения сииаисн; программа завершает свою работу с кодом возврата I.

Далее программа команду:

ТСН.-.Р = LELBT iliitira Password, RegisterDate, Email FROM

elicit

hr = eBd.tipea{aSeaslaa, avSCll);

dsDSN.CIoseO; return 1;

В качестве команды мы используем строку SQL, - запрос к таб-

лице clients.

. . набора, образованного в результате . этой обра-

батываются в цикле:



Cijut . << CiiJ.iijIllentlD;

cout settflO) ciid.iPassiiord;

cout seiwCaOi << c.iilfi,Jiiiri];

: - - ts auLiiLRegisterDate;

. ts.aeoc-ici;.

cout setw(30) szBuf

Здесь мы просто выводим . значения в выходной поток cout.

выполняя форматирование манипуляторами ввода/вывода (установку ширины колонки и

Что же касается форматирования поля даты регистрации, то здесь мы применили уже Вам трюк, связанный с структуры DBTIMESTAMP. Создав переменную ts типа DBTIMESTAMP, мы . в нее значение, полученное из поля cid. Далее мы выполняем преобразование формата, обращаясь к полям переменной ts.

Перед завершением своей работы программа закрывает объект команды, сеанс и соединение с источником данных:



1 ... 87 88 89 [ 90 ] 91 92 93 ... 141

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика