Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 17.04.2011, 23:39
6666 6666 вне форума
Прохожий
 
Регистрация: 14.10.2010
Сообщения: 33
Репутация: 10
Вопрос добавление в бд

у меня тест на delhi необходимо добавлять в базу данных сделанную в акцессе оценку полученную за тест. как это реализовать? высказывайте свои идеи пожалуйста. или у кого нибудь есть примеры поделитесь плизз.
Ответить с цитированием
  #2  
Старый 17.04.2011, 23:47
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,057
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

ADOQuery с запросом вида

Код:
INSERT INTO Table (ID, MARK) VALUES (:ID, :MARK)

Код вызова вида:

Код:
ADOQuery1.Params.ParamByName('ID').AsInteger := 101;
ADOQuery1.Params.ParamByName(':MARK').AsInteger := 5;
ADOQuery1.ExecSQL;
Ответить с цитированием
  #3  
Старый 16.05.2011, 19:50
6666 6666 вне форума
Прохожий
 
Регистрация: 14.10.2010
Сообщения: 33
Репутация: 10
По умолчанию

с выше перечисленным разобрался. теперь возник вопрос как добавить к этому коду счетчик т.е. чтобы к каждый раз око заносило значение по порядку?
Код:
ADOQuery2.SQL.Add('Update Таблица1 SET Оценка='+IntToStr(oko)+' ');
Ответить с цитированием
  #4  
Старый 16.05.2011, 20:01
Assistant Assistant вне форума
Продвинутый
 
Регистрация: 20.02.2011
Адрес: там где правят идиоты
Сообщения: 603
Версия Delphi: 7
Репутация: выкл
По умолчанию

так чтоли? (на mysql точно работает)
Код:
ADOQuery2.SQL.Add('Update Таблица1 SET ID = ID + 1, Оценка='+IntToStr(oko));

P.S. шото вы не то делаете, нужно же через INSERT, сделайте поле ID типа Счетчик и не используйте его при INSERT, оно само авто увеличиться.
Код:
INSERT INTO Table (MARK) VALUES (:MARK)
.........................
ADOQuery1.Params.ParamByName('MARK').AsInteger := 5;
ADOQuery1.ExecSQL;
__________________
взялся из неоткуда, ничего не прошу, помогаю просто так
ICQ: 593977748 - стучать в случае КРАЙНЕЙ необходимости, ну, или если вы со Ставрополя

Последний раз редактировалось Assistant, 16.05.2011 в 20:07.
Ответить с цитированием
  #5  
Старый 16.05.2011, 20:13
6666 6666 вне форума
Прохожий
 
Регистрация: 14.10.2010
Сообщения: 33
Репутация: 10
По умолчанию

выдает ошибку id не обновляемое поле
Ответить с цитированием
  #6  
Старый 16.05.2011, 21:20
Assistant Assistant вне форума
Продвинутый
 
Регистрация: 20.02.2011
Адрес: там где правят идиоты
Сообщения: 603
Версия Delphi: 7
Репутация: выкл
По умолчанию

сделайте его ключевым и счетчиком одновременно в MS Access в Конструкторе таблиц.
__________________
взялся из неоткуда, ничего не прошу, помогаю просто так
ICQ: 593977748 - стучать в случае КРАЙНЕЙ необходимости, ну, или если вы со Ставрополя
Ответить с цитированием
  #7  
Старый 16.05.2011, 22:20
6666 6666 вне форума
Прохожий
 
Регистрация: 14.10.2010
Сообщения: 33
Репутация: 10
По умолчанию

Цитата:
Сообщение от Assistant
сделайте его ключевым и счетчиком одновременно в MS Access в Конструкторе таблиц.

не помогло. все равно обновляются все поля
Ответить с цитированием
  #8  
Старый 16.05.2011, 22:34
Assistant Assistant вне форума
Продвинутый
 
Регистрация: 20.02.2011
Адрес: там где правят идиоты
Сообщения: 603
Версия Delphi: 7
Репутация: выкл
По умолчанию

значит связи полей каким-то образом не правильно настроены.
__________________
взялся из неоткуда, ничего не прошу, помогаю просто так
ICQ: 593977748 - стучать в случае КРАЙНЕЙ необходимости, ну, или если вы со Ставрополя
Ответить с цитированием
  #9  
Старый 19.05.2011, 14:17
6666 6666 вне форума
Прохожий
 
Регистрация: 14.10.2010
Сообщения: 33
Репутация: 10
По умолчанию

а как можно настроить связи полей?
Ответить с цитированием
  #10  
Старый 19.05.2011, 14:21
Assistant Assistant вне форума
Продвинутый
 
Регистрация: 20.02.2011
Адрес: там где правят идиоты
Сообщения: 603
Версия Delphi: 7
Репутация: выкл
По умолчанию

а это нужно на код и базу смотреть, чего вы там наворотили ))
__________________
взялся из неоткуда, ничего не прошу, помогаю просто так
ICQ: 593977748 - стучать в случае КРАЙНЕЙ необходимости, ну, или если вы со Ставрополя
Ответить с цитированием
  #11  
Старый 19.05.2011, 14:37
6666 6666 вне форума
Прохожий
 
Регистрация: 14.10.2010
Сообщения: 33
Репутация: 10
По умолчанию

вот база...
Вложения
Тип файла: rar 123.rar (13.6 Кбайт, 7 просмотров)
Ответить с цитированием
  #12  
Старый 19.05.2011, 14:40
6666 6666 вне форума
Прохожий
 
Регистрация: 14.10.2010
Сообщения: 33
Репутация: 10
По умолчанию

поля фио, вариант, дата добавляются при авторизации
Код:
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('INSERT INTO [Таблица1] ([фамилия],[вариант],[дата]) VALUES ('+QuotedStr(edit1.Text)+','+QuotedStr(combobox1.text)+','+QuotedStr(SysUtils.DateToStr(Date))+')');
ADOQuery2.ExecSQL;

поле оценка
Код:
ADOQuery2.SQL.Add('Update Таблица1 SET  Оценка='+IntToStr(oko)+' ');
ADOQuery2.ExecSQL;
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:36.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter