Объектно-ориентированное программирование на С++ - eDrive
Объектно-ориентированное программирование на С++ - eDrive Объектно-ориентированное программирование на С++ - eDrive
88 Подключение к базам данных Хорошим стилем программирования считается отделение интерфейса пользователя от компонентов связи с базой данных. Этим достигается повышенная гибкость проекта, позволяющая менять средства связи независимо от интерфейса или усовершенствовать интерфейс без изменения подключений. Инструментом такого разделения в C++Builder служат модули данных Data Module из библиотеки шаблонов Object Repository. Это специальный тип формы, применяемый в качестве хранилища невидимых компонентов, в первую очередь – компонентов баз данных. Как и формы, каждый модуль данных строится с использованием файла заголовков (.H), файла кода (.CPP) и файла структуры модуля (.DFM). Окно модуля данных удобно применять вместе с вкладкой Diagram и с окном Object TreeView, так как модуль данных отражает компоненты, а вкладка Diagram – их иерархическую структуру. При проектировании компоненты можно помещать прямо в модуль данных или на ветви Object Tree- View, в результате чего они становятся дочерними компонентами того объекта, на который помещаются. До завершения привязки объекты Object Tree- View помечаются вопросительными знаками. В частности, для подключения базы данных через вспомогательный набор данных по технологии ADO в модуль данных помещается объект ADOConnection с вкладки ADO. Его редактор свойства ConnectionString предлагает сформировать строку подключения (или использовать файл .UDL). Для формирования такой строки (под кнопкой Build) при подключении к персональным базам данных «Microsoft» можно выбрать провайдера (драйвера – поставщика информации) Microsoft Jet. На вкладке Connection этого же окна в поле Select or enter a database name указывается подключаемая база данных. Кнопкой Test Connection проверяется подключение. В сформированной таким образом строке подключения указано имя провайдера, имя и пароль пользователя и папка с базой данных. В большинстве случаев свойство LoginPrompt объекта ADOConnection устанавливается в false для открытия базы данных без пароля. Связь приложения с базой данных в архитектуре «клиент-сервер» выполняется с помощью источников данных, работающих через драйверы ODBC. С описанием таких источников в формате DSN (Data Source Notification) можно ознакомиться, если открыть Администратор источников данных
89 ODBC в папке Панель управления Windows. Вкладки этой программы посвящены трем категориям источников: • пользовательский DSN единственного пользователя одного компьютера; • системный DSN всех пользователей компьютера; • файловый DSN, доступный всем пользователям сети, имеющих одинаковые драйверы, независимо от компьютера. На отдельной вкладке представлены установленные на компьютере драйверы ODBC. Для работы с конкретной базой данных обычно подключают имеющийся или создают новый источник данных, используя соответствующий драйвер. Этот источник впоследствии распространяют в комплекте с приложением и базой данных. Поэтому для формирования строки подключения под кнопкой Build обычно выбирается Microsoft OLE DB Provider for ODBC Drivers, служащий универсальным механизмом доступа к продуктам «Microsoft». На вкладке Connection этого же окна в поле переключателя Use connection string под кнопкой Build выбирается источник данных. Если требуемый источник данных отсутствует и его следует создать, то в поле DSN Name под кнопкой New указывается одна из строк: • Microsoft Access Driver, обслуживающая Microsoft Access; • Microsoft dBase Driver для работы с базами xBase; • Microsoft Excel Driver для работы с таблицами Microsoft Excel; • Microsoft Text Driver для подключения текстовых таблиц; • SQL Server для обращения к корпоративной базе данных и вводится произвольное имя нового источника. В следующем окне ODBC Microsoft Access Setup базу данных можно выбрать (под кнопкой Select) либо создать новую (под кнопкой Create), задав ее имя. В последнем случае должно поступить сообщение об успешном создании базы данных. Выделив найденный или созданный источник и вернувшись на вкладку Connection, остается убедиться в его работоспособности кнопкой Test Connection. А вот пример программного подключения, выполняемого в конструкторе модуля данных:
- Page 37 and 38: 37 void Whiles1 () { int temp = 10,
- Page 39 and 40: 39 В следующем приме
- Page 41 and 42: 41 Число байтов, выд
- Page 43 and 44: Перестановки и сор
- Page 45 and 46: } 45 for (int i=1; i=0 + 1; - -j) i
- Page 47 and 48: 47 нять, создавать с
- Page 49 and 50: lb->LoadFromFile (“1.txt”); Sho
- Page 51 and 52: 51 При передаче в фу
- Page 53 and 54: 53 } // 0 1 Иванов 2 Петр
- Page 55 and 56: 55 void Info (TList *vl) { AnsiStri
- Page 57 and 58: Allocate (k[0], k[1], book1); Alloc
- Page 59 and 60: 59 else ShowMessage ("Такой ч
- Page 61 and 62: 61 for (rj=n.rbegin (); rj!=n.rend
- Page 63 and 64: int i, d[] = { 5, 2, 3, 8, 3, 1, 3
- Page 65 and 66: 22. Каков принцип де
- Page 67 and 68: StringGrid1->Cells[0][j] = myS[j].a
- Page 69 and 70: void Files2 () { AnsiString from =
- Page 71 and 72: void _ _fastcall TForm1::DelFromFil
- Page 73 and 74: 73 Фрагмент обработ
- Page 75 and 76: 75 отказ в доступе, EM
- Page 77 and 78: 77 //myApplication.cpp #include "my
- Page 79 and 80: 79 Для подключения н
- Page 81 and 82: 81 Управление созда
- Page 83 and 84: 83 Контрольные вопр
- Page 85 and 86: 85 для построения ма
- Page 87: 87 В C++Builder все подкл
- Page 91 and 92: void _ _fastcall TDBForm1::ConnectC
- Page 93 and 94: 93 Для подключения з
- Page 95 and 96: 95 Контрольные вопр
- Page 97 and 98: class VPC { private: int type; Ansi
- Page 99 and 100: 99 AnsiString result; VDeque *curso
- Page 101 and 102: } 101 VList a (3); // констр
- Page 103 and 104: }; VStackAndQueue (AnsiString str);
- Page 105 and 106: }; 105 public: VSecond (AnsiString
- Page 107 and 108: } ShowMessage ("Старое вре
- Page 109 and 110: } 109 AnsiString temp; for (i=0; i
- Page 111 and 112: 111 }; int VPrice::operator > (cons
- Page 113 and 114: 113 void MainVVector () { VVector
- Page 115 and 116: 115 void MainVEqu() { // x + 4y = 9
- Page 117 and 118: 117 Виртуальные функ
- Page 119 and 120: 119 virtual Тип имяФункц
- Page 121 and 122: 121 7. В чем заключает
- Page 123 and 124: 123 • руководство си
- Page 125 and 126: 125 Предметный указа
- Page 127: 5 Валерий Михайлови
89<br />
ODBC в папке Панель управления Windows. Вкладки этой программы посвящены<br />
трем категориям источников:<br />
• пользовательский DSN единственного пользователя одного компьютера;<br />
• системный DSN всех пользователей компьютера;<br />
• файловый DSN, доступный всем пользователям сети, имеющих<br />
оди<strong>на</strong>ковые драйверы, независимо от компьютера.<br />
На отдельной вкладке представлены установленные <strong>на</strong> компьютере<br />
драйверы ODBC. Для работы с конкретной базой данных обычно подключают<br />
имеющийся или создают новый источник данных, используя соответствующий<br />
драйвер. Этот источник впоследствии распространяют в комплекте с<br />
приложением и базой данных.<br />
Поэтому для формирования строки подключения под кнопкой Build<br />
обычно выбирается Microsoft OLE DB Provider for ODBC Drivers, служащий<br />
универсальным механизмом доступа к продуктам «Microsoft». На вкладке<br />
Connection этого же ок<strong>на</strong> в поле переключателя Use connection string под<br />
кнопкой Build выбирается источник данных. Если требуемый источник данных<br />
отсутствует и его следует создать, то в поле DSN Name под кнопкой<br />
New указывается од<strong>на</strong> из строк:<br />
• Microsoft Access Driver, обслуживающая Microsoft Access;<br />
• Microsoft dBase Driver для работы с базами xBase;<br />
• Microsoft Excel Driver для работы с таблицами Microsoft Excel;<br />
• Microsoft Text Driver для подключения текстовых таблиц;<br />
• SQL Server для обращения к корпоративной базе данных<br />
и вводится произвольное имя нового источника. В следующем окне ODBC<br />
Microsoft Access Setup базу данных можно выбрать (под кнопкой Select) либо<br />
создать новую (под кнопкой Create), задав ее имя. В последнем случае<br />
должно поступить сообщение об успешном создании базы данных. Выделив<br />
<strong>на</strong>йденный или созданный источник и вернувшись <strong>на</strong> вкладку Connection,<br />
остается убедиться в его работоспособности кнопкой Test Connection.<br />
А вот пример программного подключения, выполняемого в конструкторе<br />
модуля данных: