![]() |
|
|
#1
|
|||
|
|||
|
у меня тест на delhi необходимо добавлять в базу данных сделанную в акцессе оценку полученную за тест. как это реализовать? высказывайте свои идеи пожалуйста. или у кого нибудь есть примеры поделитесь плизз.
|
|
#2
|
|||
|
|||
|
ADOQuery с запросом вида
Код:
INSERT INTO Table (ID, MARK) VALUES (:ID, :MARK) Код вызова вида: Код:
ADOQuery1.Params.ParamByName('ID').AsInteger := 101;
ADOQuery1.Params.ParamByName(':MARK').AsInteger := 5;
ADOQuery1.ExecSQL; |
|
#3
|
|||
|
|||
|
с выше перечисленным разобрался. теперь возник вопрос как добавить к этому коду счетчик т.е. чтобы к каждый раз око заносило значение по порядку?
Код:
ADOQuery2.SQL.Add('Update Таблица1 SET Оценка='+IntToStr(oko)+' '); |
|
#4
|
|||
|
|||
|
так чтоли? (на 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;Последний раз редактировалось Assistant, 16.05.2011 в 20:07. |
|
#5
|
|||
|
|||
|
выдает ошибку id не обновляемое поле
|
|
#6
|
|||
|
|||
|
сделайте его ключевым и счетчиком одновременно в MS Access в Конструкторе таблиц.
|
|
#7
|
|||
|
|||
|
Цитата:
не помогло. все равно обновляются все поля |
|
#8
|
|||
|
|||
|
значит связи полей каким-то образом не правильно настроены.
|
|
#9
|
|||
|
|||
|
а как можно настроить связи полей?
|
|
#10
|
|||
|
|||
|
а это нужно на код и базу смотреть, чего вы там наворотили ))
|
|
#11
|
|||
|
|||
|
вот база...
|
|
#12
|
|||
|
|||
|
поля фио, вариант, дата добавляются при авторизации
Код:
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; |