|
|
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
В atl-проект после включения заголовочного файла и попытки объявить объект типа CDatabase выдаются ошибки: error C2065: 'CDatabase' : undeclared identifier c:\Program Files\Microsoft Visual Studio\MyProjects\iGrafNoo\GrafNoo.cpp(22) : error C2146: syntax error : missing ';' before identifier 'mdb' c:\Program Files\Microsoft Visual Studio\MyProjects\iGrafNoo\GrafNoo.cpp(22) : error C2065: 'mdb' : undeclared identifier Error executing cl.exe. посоветуйте что сделать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2005, 15:34 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
error C2065: 'mdb' : undeclared identifier включи файл с описанием mdb ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2005, 18:04 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
mdb - это как раз переменная типа CDatabase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 09:56 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
CDatabase- это, IMHO, MFC - класс и нуна подключить нуный хидер (вроде afxdb.h или поищи в контекстной помощи (F1) по данному классу (MSDN)). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 10:25 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
Файл подключен и без объявления переменной все компилится. Только при попытке объявления переменной загоны начинаются. В проекте с использованием MFC все намана, но это не преемлемо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 10:34 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
noobelФайл подключен и без объявления переменной все компилится. Только при попытке объявления переменной загоны начинаются. В проекте с использованием MFC все намана, но это не преемлемо то есть ты пытаешся юзать MFC класс какойто , но так как это не приемлемо ты не хочешь делать "CDatabase- это, IMHO, MFC - класс и нуна подключить нуный хидер (вроде afxdb.h или поищи в контекстной помощи (F1) по данному классу (MSDN))." (с) Alex_VC так чтоли получается ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 10:55 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
типа того. мне нуна использовать MFC класс в atl-проекте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 11:32 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
Попробуйте создать болванку (визардом) в которой будет интересующая Вас комбинация. Если прокатит - сравните все заголовочные файлы и свойства проектов. Если Вам нужно чиссо обращение к БД и Вы тянете только из-за этого MFC, то это кривизна. Более того CDatabase, CRecordset и т.п. классы - не совсем удачная сторона MFC. Рекомендую сформулировать для себя понимание того, что Вам необходимо от БД и реализовать свои классы. Это и меньше по обьёму, более гибче и элегантнее выйдет. с уважением (круглый) ЗЫ Хотя бывает и визард прописывает явную ерунду - но то более навороченные проекты :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 12:16 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
CDatabase единственное известное мне решение при работе с odbc. может что-нить еще посоветуете - буду рад... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 14:38 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
Если взять апишные вызовы ODBC и сделать свою обёртку то можно убить следующих зайцев... 1) чёткое управление конекшеннами. обычно лист конекшеннов. из любого места в программе: хочу-получаю-работаю. 2) работа с нулевыми значениями полей. работа с обычными типа (их не так много). перегружая операторы получите достаточно простые комбинации, при гибкости составления SQL запросов. пример... MainRecordset set("xruDB"); // в пуле уже есть открытый коннекшен, а может и нет - всё зависит от реализации и фантазии. char strSql[] = "Select gav, tav, may From kuku Where first=1"; set.Exec(strSql); while(set.Fetch()) { int i = set.GetField(1); char c = set.GetField(2); long l = set.GetField(3); } и т.д.. С таким подходом Вы гибче и быстрее сможете обеспечивать как создание, так и модификацию обращений к БД, чем аналогичные классы из эмфэсей... Это совет (типа как совет дня :) ) пришло из опыта. Когда в проекте более 2000 классов и многие из них чайлды от CRecordset - программа гораздо тяжелее и не поворотливее (как выполнение, так и сопровождение), чем способ описанный выше. с уважением (круглый) ЗЫ хотя... "У каждого портного - свой взгляд на исскуство." Казьма Прутков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 17:37 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
у меня почти так сделано только для firebird. работа с базой выглядит примерно так: TFBDATABASE db; db.connect(...);//параметры подключения TFBTRANSACTION trn(db); TFBQUERY q(db,trn); q.setSql("select gav, tav, may from kuku where first=1"); q.open(); while (!q.eof()) { int i=q.fields(0).asInteger(); string c=q.fields(1).asString(); long l=q.fields(2).asInteger(); q.next(); }; пул соединений мысль очень интересная, но пока не вижу необходимости. Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2005, 17:52 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
Ну вот ! теперыча нуна только перегрузить коннекшен к базе и юзать ODBC как будто она "firebird". :) Или есть существенные подводные камни ? (кпуглый) ЗЫ Если планируеться ВСЁ юзать через "универсальныую методу" ODBC - то тогда завести необходимые учётные записи в одибиси и работать через него. В принцепе тормозов практически нет, но появляеться лишняя точка настроек (хотя это не всегда гуд) :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2005, 11:53 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
noobelCDatabase единственное известное мне решение при работе с odbc. может что-нить еще посоветуете - буду рад... Советую вместо ODBC- ADO (IMHO, быстрее работает...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2005, 11:05 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
Alex_VCСоветую вместо ODBC- ADO (IMHO, быстрее работает...) Это с чего вдруг ADO будет работать быстрее чем ODBC? Особенно если учесть что ADO это надстройка над ODBC :) ODBC - универсальная система доступа к базам данных по принципу функций. ADO обертка этих функций в объекты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2005, 19:03 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
kolobok0Если планируеться ВСЁ юзать через "универсальныую методу" ODBC - то тогда завести необходимые учётные записи в одибиси и работать через него. В принцепе тормозов практически нет, но появляеться лишняя точка настроек (хотя это не всегда гуд) :) Вовсе не обязательно заводить учетные записи. Можно формировать строку подключения к базе в рантайме и отдавать ее функции SQLDriverConnect(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2005, 19:06 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
можно... но встречал траблы при таком подходе...может и сам дурак - ХЗ.. (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2005, 19:32 |
|
||
|
Разработка atl объекта
|
|||
|---|---|---|---|
|
#18+
kolobok0можно... но встречал траблы при таком подходе...может и сам дурак - ХЗ.. Да, при использовании DSN-less connections есть несколько проблем: Если путь между клиентом и сервером БД различается в разных инсталляциях. Тогда прийдется либо делать достаточно хитрую процедуру поиска сервера БД в сети, либо создавать специальный файл конфигурации в котором прописывать как клиент должен искать сервер. При использовании DSN эти "правила поиска сервера" прописываются в стандартном для ODBC стиле и юзер может сам их исправлять, если конечно умеет обращаться с ODBC Adminstrator :) Вторая проблема DSN-less подключения - твоя клиентская программа завязывается на конкретный драйвер ODBC. При апгрейде версии драйвера (если его имя сменится) либо при желании использовать драйвер совершенно для другой базы данных (смена типа сервера БД) то прийдется опять либо делать конфигурационный файл, либо хитрую процедуру перенастройки. DSN хранит всю эту информацию в себе - практически готовый конфигурационный файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2005, 19:44 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=33151674&tid=2033066]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
47ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 370ms |

| 0 / 0 |
