Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2014, 22:56   #11
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А где в коде он вообще открывался? Естественно на закрытом нельзя так делать
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 16.06.2014, 23:18   #12
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

А, DBGrid точно получает данные из ADOQuery (как Вы писали выше)? Там есть ещё ADOTable.
Если попробовать:
Код:
ADOTAble1.Refresh;
Streletz вне форума Ответить с цитированием
Старый 16.06.2014, 23:45   #13
Valentina10121991
Пользователь
 
Регистрация: 30.03.2011
Сообщений: 34
По умолчанию

Цитата:
Сообщение от Streletz Посмотреть сообщение
А, DBGrid точно получает данные из ADOQuery (как Вы писали выше)? Там есть ещё ADOTable.
Если попробовать:
Код:
ADOTAble1.Refresh;
Так пишет недостаточно сведений ключевого поля для обновления
Valentina10121991 вне форума Ответить с цитированием
Старый 16.06.2014, 23:52   #14
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Сообщение от Valentina10121991 Посмотреть сообщение
Так пишет недостаточно сведений ключевого поля для обновления
Ключевое поле в таблице есть? Если есть, то в выборку оно входит?
Streletz вне форума Ответить с цитированием
Старый 16.06.2014, 23:56   #15
Valentina10121991
Пользователь
 
Регистрация: 30.03.2011
Сообщений: 34
По умолчанию

Цитата:
Сообщение от Streletz Посмотреть сообщение
Ключевое поле в таблице есть? Если есть, то в выборку оно входит?
Нет ключевого поля
Valentina10121991 вне форума Ответить с цитированием
Старый 17.06.2014, 00:03   #16
Valentina10121991
Пользователь
 
Регистрация: 30.03.2011
Сообщений: 34
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А где в коде он вообще открывался? Естественно на закрытом нельзя так делать
Нужно сделать так?
Код:
Form4_new_book.ShowModal;
  ADOQuery1.Open;
  ADOQuery1.Requery();
  ADOQuery1.Close;
end;
Valentina10121991 вне форума Ответить с цитированием
Старый 17.06.2014, 00:15   #17
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Нет ключевого поля
Назначьте или добавьте его в таблице БД.
Цитата:
Нужно сделать так?
Код:
Form4_new_book.ShowModal;
  ADOQuery1.Open;
  ADOQuery1.Requery();
  ADOQuery1.Close;
end;
Не поможет. Буквально несколькими постами Выше мы с Вами вроде выяснили, что данные идут из ADOTable1.
С DBGrid должен быть связан компонент DataSource. У него есть свойство DataSet. Посмотрите, что в этом свойстве, чтобы узнать точно.

Последний раз редактировалось Streletz; 17.06.2014 в 00:37.
Streletz вне форума Ответить с цитированием
Старый 17.06.2014, 00:32   #18
Valentina10121991
Пользователь
 
Регистрация: 30.03.2011
Сообщений: 34
По умолчанию

Цитата:
Сообщение от Streletz Посмотреть сообщение
А, DBGrid точно получает данные из ADOQuery (как Вы писали выше)? Там есть ещё ADOTable.
Если попробовать:
Код:
ADOTAble1.Refresh;
Все получилось С ADOQuery
Valentina10121991 вне форума Ответить с цитированием
Старый 17.06.2014, 00:35   #19
Valentina10121991
Пользователь
 
Регистрация: 30.03.2011
Сообщений: 34
По умолчанию

А можно еще как нибудь сделать что бы курсор переводился на последнее добавленное поле? У меня получается весь Грид перелистать нужно что бы увидеть изменения
Valentina10121991 вне форума Ответить с цитированием
Старый 17.06.2014, 01:28   #20
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Все получилось С ADOQuery
Поздравляю! Искренне рад за Вас!
Однако, интересно получается. Сперва Вы говорите, что всё идёт через ADOQuery. Потом, в процессе анализа кода и обсуждения устанавливается, что как минимум ряд функций, если не всё, работает через ADOTable. В конце концов выясняется, что всё-таки действительно ADOQuery. При этом информации от Вас поступает крайне мало и то в самых общих чертах. Даже когда я Вас прямо просил об уточнении через какой компонент в действительности идут данные (какой компонент прописан в DataSet у DataSource).
Простите, я не хочу Вас обидеть, но складывается впечатление о том, что либо код не Ваш (Вы его где-то раздобыли и сейчас пытаетесь приспособить для своих целей) и Вы не разобрались что там к чему, либо, как говорит один коллега, Вы из числа, так называемых, "партизан".
Если из числа последних, то советую отказываться от "партизанщины" на форумах. ИМХО, Вам же проще будет.
Цитата:
А можно еще как нибудь сделать что бы курсор переводился на последнее добавленное поле?
Можно посмотреть в этом направлении: сюда и сюда.
Streletz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обновление нумерации строк в DBGrid Denis Black БД в Delphi 3 28.05.2012 19:42
Обновление данных DBGrid DS75 БД в Delphi 24 02.11.2011 22:38
DBGrid и обновление данных в БД a_n_n_a БД в Delphi 1 02.08.2011 18:02
DBGrid запись и обновление a_n_n_a БД в Delphi 0 09.04.2011 06:03
Обновление DBGrid + ADOQuery Demonk БД в Delphi 11 04.02.2009 13:42