Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.137.157.45] |
|
Сообщ.
#1
,
|
|
|
В данном случае MFC...
Использую один курсор-переменную (CRecordset) для доступа к нескольким таблицам. С получением информации проблемм нет. Однако с изменением или добавлением новых записей возникают проблеммы... При получении информации просто Цитата m_Set->GetFieldValue(i, m_Value); И всё в порядке! Только вот функции типа Цитата m_Set->SetFieldValue(i, m_Value); я не нашёл... (наверное и неудивительно) Так как же их можно изменять эти фиелды... Не прибегая к генерённым AppWizard-ом спецовым классам под каждую таблицу? И по ходу Как можно создавать *.mdb файл из программы? Слышал что можно какими-то стандартными Sql-функциями |
Сообщ.
#2
,
|
|
|
используй лучше CDaoRecordset: у него есть эти методы. базы данных можно создавать с помошью CDaoDatabase.
|
Сообщ.
#3
,
|
|
|
Нет, Dao не очень хочется брать. В общем-то на сколько я понимаю они довольно схожи (ODBC и DAO) странно что у ODBC этих методов нету???
А если уж рассматривать переход на другой интерфейс, то собираюсь по ходу разбирательств с ADO на него прогу перевести. |
Сообщ.
#4
,
|
|
|
Операции над записями результирующего набора можно проводить воспользовавшись операторами языка SQL, например так
m_pSet->m_pDatabase.ExecuteSQL("INSERT INTO Table VALUES ('xxx','yyy','zzz')"); Единственное, что если идти таким путём, то вернуть результат запроса не так и просто, однако для целей вставки, редактирования и удаления это вполне годится. Что касается создания *.mdb файла, то здесь наверное можно воспользоватся SQL оператором CREATE DATABASE, однако эту часть работы лучше делать через DAO. |
Сообщ.
#5
,
|
|
|
дык эта....
пользуйся сиквелом..SQL т.е. потому как произвольно в ЦРекордсете не изменить данные вроде (у меня тож не получалось ;D) - только если вставать на нужную и редактировать её... ; mdb файл создавай тем же самым сиквелом (в мсдн'е есть пример скл-кода) ток для .dbf файлов половина сиквеловских команд не работает.. :-/ |
Сообщ.
#6
,
|
|
|
Цитата SheSan, 08.10.02, 13:51:36 Операции над записями результирующего набора можно проводить воспользовавшись операторами языка SQL, например так m_pSet->m_pDatabase.ExecuteSQL("INSERT INTO Table VALUES ('xxx','yyy','zzz')"); Единственное, что если идти таким путём, то вернуть результат запроса не так и просто, однако для целей вставки, редактирования и удаления это вполне годится. Что касается создания *.mdb файла, то здесь наверное можно воспользоватся SQL оператором CREATE DATABASE, однако эту часть работы лучше делать через DAO. Полностью согласен, только выше был описан способ добавления новой записи, а чтоб изменить существующую : UPDATE. Хелп можещь посмотреть в Access |
Сообщ.
#7
,
|
|
|
<br>m_pSet->m_pDatabase.ExecuteSQL("INSERT INTO Table VALUES ('xxx','yyy','zzz')"); <br> I`m sorry... Я с SQL не профи, так развлекаюсь. Не могли бы вы (ALL) пояснить что такое будет "xxx", "yyy" и "zzz"? Спасибо всем отозвавшимся! |