Поиск:

Ответ в темуСоздание новой темы Создание опроса
> программа с бд 
:(
    Опции темы
stmamont
Дата 5.1.2006, 23:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 343
Регистрация: 13.3.2004
Где: влг

Репутация: 3
Всего: 3



Нужно сделать программу работающую с базой данных, хранящейся в файле (локальная бд)
(надеюсь правильно выразился).
Как это лучше реализовать? Чем пользоваться? Где почитать документацию?
Вообще говорят BDE всегда для этого была, но в 6 версии появилось куча
других.

Да, кстати, читал про BDE
Вопрос:
Если в Database Desktop Создать таблицу типа paradox 7. потом создать там
псевдоним.
В проекте воспользоваться соответствующими компонентами, настроить их.
Настроить компоненту Table для работы с этим псевдонимом.
Итак вопрос: Если программу откомпилировать и перенести на сторонний компьютер
то как заставить ее работать так же с этой же бд на том компьютере?
И что надо переносить на др компьютер помимо *.exe?


--------------------
user posted image
PM MAIL ICQ   Вверх
_hunter
Дата 6.1.2006, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 24
Всего: 98



лучше ADO используй. там в Connection String' е путь к файлу прописал и все...


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
FRAGNATIC
Дата 6.1.2006, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


..::Свирепый Кодер::..
**


Профиль
Группа: Участник
Сообщений: 901
Регистрация: 17.10.2004
Где: ICQ

Репутация: нет
Всего: 11



Цитата(stmamont @ 5.1.2006, 23:36 Найти цитируемый пост)

И что надо переносить на др компьютер помимо *.exe?

саму бд =)
если будешь адо использовать)
а если бде то тогда ещё и bde тянуть за собой придётся)
почитать можно в книге
кидаешь на форум адоконектион, датасурс и по выбору или адотэйбл или adoquery =)
PM MAIL   Вверх
stmamont
Дата 6.1.2006, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 343
Регистрация: 13.3.2004
Где: влг

Репутация: 3
Всего: 3



хм , я понимаю что в книге.
ПРидется, как всегда в справке встроенной в билдер ковыряться.
если использовать ado то тянуть с собой надо файлы с бд? или какую то программу для работы с бд?


--------------------
user posted image
PM MAIL ICQ   Вверх
Partizan
Дата 6.1.2006, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 7
Всего: 67



smile файлы с БД придётся тянуть в любом случае...


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
FRAGNATIC
Дата 6.1.2006, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


..::Свирепый Кодер::..
**


Профиль
Группа: Участник
Сообщений: 901
Регистрация: 17.10.2004
Где: ICQ

Репутация: нет
Всего: 11



stmamont
идём в раздел литерату и берём книгу там)
имхо будет по полезнее чем мучать хэлп))
PM MAIL   Вверх
stmamont
Дата 6.1.2006, 22:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 343
Регистрация: 13.3.2004
Где: влг

Репутация: 3
Всего: 3



Поковырялся в хелпе.
Итак,
на форме
ADOConnection
DATASource
ADOQuery

запросы селект пишутся
в
dbGrid

так понял что ADOQuery->ExecSQL для INSERT UPDATE или DELETE

добавил таким образом запись (яко бы). как теперь осуществить COMMIT?
после вызова
ADOQuery->ExecSQL() попробовал прочитать все записи из бд. ---> exception
в чем дело.

бд создал в MS access.

Еще вопрос, при старте проекта и при запуске программы спрашивается логин и пароль, хотя их нет. Как сделать чтоб это сообщение не выскакивало?


--------------------
user posted image
PM MAIL ICQ   Вверх
FRAGNATIC
Дата 6.1.2006, 23:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


..::Свирепый Кодер::..
**


Профиль
Группа: Участник
Сообщений: 901
Регистрация: 17.10.2004
Где: ICQ

Репутация: нет
Всего: 11



Цитата(stmamont @ 6.1.2006, 22:59 Найти цитируемый пост)

так понял что ADOQuery->ExecSQL для INSERT UPDATE или DELETE

ExecSQL выполняет запрос но не возвращает никаких данных!
так что тебе надо
ADOQuery->Close
ADOQuery->SQL->Clear
ADOQuery->SQL->Add(твой запрос)
ADOQuery->Open
Цитата(stmamont @ 6.1.2006, 22:59 Найти цитируемый пост)

добавил таким образом запись (яко бы). как теперь осуществить COMMIT?
после вызова

чтобы выполнить комит сначало надо запустить механизм транзикации типа код из дэлфи
Код

    DataModule1.ADOConnection.BeginTrans;
    try
      //some sql
      DataModule1.ADOConnection.CommitTrans;
    except
      DataModule1.ADOConnection.RollbackTrans;
    end;

Цитата(stmamont @ 6.1.2006, 22:59 Найти цитируемый пост)

Еще вопрос, при старте проекта и при запуске программы спрашивается логин и пароль, хотя их нет. Как сделать чтоб это сообщение не выскакивало?

свойсто компонента ADOConnection LoginPromt поставь в False

Это сообщение отредактировал(а) FRAGNATIC - 6.1.2006, 23:11
PM MAIL   Вверх
mrgray
Дата 9.1.2006, 21:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 8.1.2006

Репутация: нет
Всего: нет



Ладно, теперь вопрос по работе с ADO:
Все вроде настроено по-человечески(connection,Query).
Еще не запуская программы открываю SQL запросом Access БД и отображаю в Grid'е все поля(*) - все нормально. Драйвер использую Driver do Microsoft Access (*.mdb).
Запускаю программу - все работает.
Только меняю строку запроса c "select * from tablica" на "SELECT * FROM tablica WHERE tablica.imea =\""+Edit1->Text+"\";" как тут же вылетает Exception "[Microsoft][Драйвер ODBC Microsoft Access] Слишком мало параметров. Требуется 1."
В чем дело???
smile - ЭТО Я!!!!
PM MAIL   Вверх
FRAGNATIC
Дата 9.1.2006, 23:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


..::Свирепый Кодер::..
**


Профиль
Группа: Участник
Сообщений: 901
Регистрация: 17.10.2004
Где: ICQ

Репутация: нет
Всего: 11



Цитата(mrgray @ 9.1.2006, 21:31 Найти цитируемый пост)

"SELECT * FROM tablica WHERE tablica.imea =\""+Edit1->Text+"\";"


ну во-первых чистим придыдуший запрос и потом добовляем новый
запрос SQL сойдёт и такой
Код

Query->Close;
Query->SQL->Clear
Query->SQL->Add("SELECT * FROM tablica WHERE imea="+Edit1.Text)
Query->Open

почитай про SQL )
т.к. для текста лучше не = использовать а LIKE =)

Это сообщение отредактировал(а) FRAGNATIC - 9.1.2006, 23:27
PM MAIL   Вверх
_hunter
Дата 10.1.2006, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 24
Всего: 98



и во вторых что за "Driver do Microsoft Access (*.mdb)."?
или Microsoft Jet x.x OLE DB Provider ил Microsoft OLE DB Provider for ODBC Drivers используй



--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
bigscorp
Дата 16.1.2006, 13:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 23.5.2005

Репутация: нет
Всего: нет



а ваще еси выборок никаких не надо делать хитровымученных, можно просто использовать TADOTable, а если фильтронуть на до то Filter="xxx", Feltered=true.
и не надо мутить с SQL операторами
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0809 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.