-
Здравствуйте, я разрабатываю БД на Delphi и Mysql с помощью компонентов Ado. Базу создала и подключила, но возник ряд вопросов:
1. В таблице Grid в одном поле отображается тип данных, а не сами данные, в остальных полях все как положено. Также это поле нормально отображается в самой БД Mysql. В чем может быть ошибка и как ее исправить?
2. как организовать добавление данных в БД посредством Delphi? пишу:
if DataModule2.ADOTableBase.Modified then
DataModule2.ADOTableBase.Post;
Close;
но как-то он коряво данные заполняет.
3. как сразу после удаления какой-либо строки обновить таблицу, а то она обновляется только после переподключения к базе?
заранее спасибо
-
> 1. В таблице Grid в одном поле отображается тип данных,
> а не сами данные, в остальных полях все как положено. Также
> это поле нормально отображается в самой БД Mysql. В чем
> может быть ошибка и как ее исправить?
Ужель Integer? :)
см OnDrawDataCell или google Memo-поля в DBGrid
> 2. как организовать добавление данных в БД посредством Delphi?
> пишу:
> if DataModule2.ADOTableBase.Modified then
> DataModule2.ADOTableBase.Post;
> Close;
> но как-то он коряво данные заполняет.
что конкретно значит "коряво". Что ожидалось и что получилось?
> 3. как сразу после удаления какой-либо строки обновить таблицу,
> а то она обновляется только после переподключения к базе?
Приведите свой код удаления
-
1. использую тип данных widestring
2. добавляет только данные в бд Mysql, но не отображает их в таблице DBGrid
-
> 1. использую тип данных widestring
см google OnDrawDataCell в DBGrid
или use другой Grid, где это реализовано
> 2. добавляет только данные в бд Mysql, но не отображает
> их в таблице DBGrid
как происходит добавление, приведите код.
-
> 1. использую тип данных widestring
стандартный grid в D6 не поддерживает уникод
> 2. добавляет только данные в бд Mysql, но не отображает
> их в таблице DBGrid
а как добавляются данные?
-
> OW © (21.04.11 12:07) [3]
> clickmaker © (21.04.11 12:08) [4]
Мужики, у меня в подвале что-то стучит. Нужна помощь.
-
Удалено модератором
-
2. пишу данные в dbedit, на кнопку вешаю обработчик:
datamodule.adotable.open;
datamodule.adotable.fieldbyname('name').asstring:=dbedit1.text;
далее по всем полям, которые необходимо заполнить
datamodule.adotable.post;
close
-
> 3. как сразу после удаления какой-либо строки обновить таблицу,
> а то она обновляется только после переподключения к базе?
Приведите свой код удаления
if application.messagebox ('вы действительно хотите удалить эту запись?'), 'внимание', mb_okcancel)=id_ok then datamodule.adotable.delete;
-
> [8] Jenny © (21.04.11 14:34)
а где обновление набора данных, на который смотрит DBGrid?
-
а как это сделать? не могли бы привести код?
-
-
> Jenny © (21.04.11 14:31) [7]
>
> 2. пишу данные в dbedit, на кнопку вешаю обработчик:
> datamodule.adotable.open;
> datamodule.adotable.fieldbyname('name').asstring:=dbedit1.
> text;
> далее по всем полям, которые необходимо заполнить
> datamodule.adotable.post;
> close
это бред сивой кобылы. если используется DBEdit, то:
1. DBEdit ДОЛЖЕН быть уже связан с adotable и его каким-то полем.
2. При изменении значения в DBEdit adotable АВТОМАТИЧЕСКИ переходит в режим dsEdit
3. Потому достаточно где-то запостить(Post) данные..Например на кнопке "Сохранить"
В итоге вместо этой бедятины
> далее по всем полям, которые необходимо заполнить
в событии OnClick кнопки ОДИН раз вызвать
> datamodule.adotable.post;
И на кой каждый раз ОТКРЫВАТЬ и ЗАКРЫВАТЬ набор данных?