Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сохранение НД [D7, IB6.x]


Страницы:   1 2

Spawn ©   (2003-07-10 08:29:00) 

Разобрался с одной проблемой, а щас такая вот возникла:

Делаю изменения в DBGrid - все ок(Присутствует TIBUpdateSQL).
Вызываю стандартное событие из TActionList - DataSetPost и данные не сохраняются на сервере. Пробовал делать IBTransaction.Commit - тоже ни чего не сохрагяется. Свойство CachedUpdates у IBQuery стоит в True. SQL - запросы у IBUpdateSQL сгенерированны компонентом. В чем проблема? Заранее спасибо.


Johnmen   (2003-07-10 17:13:00) [1]

>Spawn © (10.07.03 17:01)

Я бы на твоём месте всё-таки сначала почитал книги, прежде чем топтать клаву на предмет баз данных...:)))


Spawn   (2003-07-10 17:04:00) [2]

Ладно)) Вроде пока все нормально Блобы нацеплю на TDBImage и TDBMemo


Spawn   (2003-07-10 17:01:00) [3]

Дак я на SQL перешел пару дней назад и до этого то один раз только базами занимался, а литературы по нми хорошей нет)))) Не подскажешь ли что с Блобами делать?


Johnmen   (2003-07-10 16:53:00) [4]

Разве в where одного поля ID не достаточно для однозначной идентификации записи ? :)

ANNOT = :OLD_ANNOT and //BLOB
PICTURE = :OLD_PICTURE and //BLOB


А это вообще что-то немыслимое...:)


Spawn   (2003-07-10 16:36:00) [5]

Сгенерированный компонентом:

update DOC
set
ID = :ID,
NAME = :NAME,
ANNOT = :ANNOT, //BLOB
PICTURE = :PICTURE, //BLOB
DEVFIO = :DEVFIO,
TEL = :TEL,
LABN = :LABN,
ZAVFIO = :ZAVFIO
where
ID = :OLD_ID and
NAME = :OLD_NAME and
ANNOT = :OLD_ANNOT and //BLOB
PICTURE = :OLD_PICTURE and //BLOB
DEVFIO = :OLD_DEVFIO and
TEL = :OLD_TEL and
LABN = :OLD_LABN and
ZAVFIO = :OLD_ZAVFIO


Johnmen   (2003-07-10 15:26:00) [6]

Как прописан ModifySQL ?


Spawn   (2003-07-10 15:04:00) [7]

Johnmen © (10.07.03 14:44) большое спасибо.
И все таки не Primary Key влияло на невозможность внесения данных в БД, а наличие в ней BLOB полей(Протестировал на 5 различных комбинациях и там где были BLOB изменять нельзя другие поля после их первого установления). Почему так?


Johnmen   (2003-07-10 14:44:00) [8]

Даблклик на IBDataBase или в Params lc_ctype=WIN1251


Spawn   (2003-07-10 14:38:00) [9]

Всмысле для IBDataBase? Там разве тоже кодировку можно прописывать? Я такого свойства не видел там, разве что в Params?


Mike1 Kouzmine1   (2003-07-10 14:32:00) [10]

А как именно она указана для IBDatabase?


Spawn   (2003-07-10 14:07:00) [11]

Это в BDE администраторе она такая, а так то конечно win1251


Mike1 Kouzmine1   (2003-07-10 14:04:00) [12]

А что это такое для компонент прямого доступа?
Может какая другая нужна? Например, win1251?


Spawn   (2003-07-10 13:59:00) [13]

Mike1 Kouzmine1 (10.07.03 13:57) Кодировка Pdox ANSI Cyrillic


Spawn   (2003-07-10 13:57:00) [14]

Так еще одно прояснение))) Ошибка вылетает только с русскими буквами)) Где то я тут видел тему на етот счет ща найду) Кажись мои мучения подходят к концу)


Mike1 Kouzmine1   (2003-07-10 13:57:00) [15]

При подключении - какая кодировка указана?


Spawn   (2003-07-10 13:54:00) [16]

Так с одним я разобрался нужно было указать Primary Key для того чтобы я мог вносить изменения в любую запись. Теперь другая проблемы - если ввожу значения отличные от цифр, то возникает ошибка, описанная мною выше.


Mike1 Kouzmine1   (2003-07-10 13:49:00) [17]

Транзакции?
Св-ва IBDatabase?


Spawn   (2003-07-10 13:46:00) [18]

И если в это первое поле (тип VARCHAR) ввести не числовое значение и попытаться сохранить данные, то возникает ошибка -
EIBInterBaseError with message "arithmetic exception, numeric overflow, or string truncation". К чему бы это?


Spawn   (2003-07-10 13:40:00) [19]

Еще одно наблюдение - я могу добавить первую запись в DBGrid, после чего следущие попытки изменения ни к чему не приводят. То же самое справедливо для добавленых записей(то есть максимум какйю запись я могу изменить - это первую и всего один раз).


Spawn   (2003-07-10 12:37:00) [20]

Меня ето просто бесит уже!!! Как так то. Почему данные не созраняются на сервере. Делаю абсолютно все как было написано в книге. Даже так сделал - в рабочей программе от книги, заменил базу на свою. DBGrid заполняется данными, но после редактирования и выходе из проги данные не сохраняются. КАК ТАКОЕ МОЖЕ БЫТЬ!!!!!!!


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо