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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2011, 23:41   #1
6666
Пользователь
 
Регистрация: 21.03.2011
Сообщений: 44
По умолчанию добавление в бд

у меня тест на delhi необходимо добавлять в базу данных сделанную в акцессе оценку полученную за тест. как это реализовать? высказывайте свои идеи пожалуйста. или у кого нибудь есть примеры поделитесь плизз.
на рисунке показано какой переменной обозначается вывод оценки:
Изображения
Тип файла: gif 777.gif (3.2 Кб, 112 просмотров)
6666 вне форума Ответить с цитированием
Старый 18.04.2011, 17:31   #2
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

А зачем использовать файлы?
проще все хранить в аксесовской базе...
реализовать можно по разному, на что фантазии хватит... конкретизируйте, пожалуйста, что Вы хотите?
maLoy*508 вне форума Ответить с цитированием
Старый 20.04.2011, 16:18   #3
6666
Пользователь
 
Регистрация: 21.03.2011
Сообщений: 44
По умолчанию

мне именно надо чтобы использовались файлы. вот эта переменная f сама оценка которая выводится в memo. у меня есть бд в акцессе. сам вопрос как сделать чтобы оценка добавлялась в базу. напротив фамилии человека который проходит данный тест? всем заранее спасибо.
6666 вне форума Ответить с цитированием
Старый 20.04.2011, 16:34   #4
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

а фамилия человека откуда берется?
не совсем понимаю как Ваша "система" работает...
вставка записи в таблицу, может это Вам надо...
Цитата:
ADOTable1.Insert;
ADOTable1.FieldByName('bla bla bal').AsString := 'bla bla bla ';;
ADOTable1.Post;

Последний раз редактировалось maLoy*508; 21.04.2011 в 13:10.
maLoy*508 вне форума Ответить с цитированием
Старый 20.04.2011, 22:19   #5
6666
Пользователь
 
Регистрация: 21.03.2011
Сообщений: 44
По умолчанию

у меня сделана авторизация вводится фамилия имя отчество и выбирается вариант. вот процедура на добавление этих данных в бд:
Цитата:
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('INSERT INTO [Таблица1] VALUES ('+QuotedStr(edit1.Text)+','+Quoted Str(combobox1.text)+','+QuotedStr(S ysUtils.DateToStr(Date))+')');
ADOQuery2.ExecSQL;
6666 вне форума Ответить с цитированием
Старый 21.04.2011, 13:12   #6
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

если я правильно Вас понимаю то Вам нужно теперь вставить оценку соответственно введенной фамилии... если да - то можно использовать sql
Цитата:
Update 'обновляемое значение' SET 'новое значение' WHERE 'указываем условие'
пробуйте -)
maLoy*508 вне форума Ответить с цитированием
Старый 04.05.2011, 19:06   #7
6666
Пользователь
 
Регистрация: 21.03.2011
Сообщений: 44
По умолчанию

добавляю в бд следующей процедурой. вроде все правильно.
form5.ADOQuery2.SQL.Clear;
form5.ADOQuery2.SQL.Add('INSERT INTO [Таблица1] ([Оценко]) VALUES ('+IntToStr(oko)+') WHERE [фамилия]='+QuotedStr(s));
form5.ADOQuery2.ExecSQL;

выдает следующую ошибку(на рисунке). в чем причина?
Изображения
Тип файла: gif Безымянный.gif (19.5 Кб, 80 просмотров)

Последний раз редактировалось 6666; 04.05.2011 в 19:52.
6666 вне форума Ответить с цитированием
Старый 04.05.2011, 20:31   #8
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

Там же написано "Пропущен символ ( ; ) в конце инструкции SQL"
Код:
form5.ADOQuery2.SQL.Add('INSERT INTO [Таблица1] ([Оценко]) VALUES ('+IntToStr(oko)+') 
WHERE [фамилия]='+QuotedStr(s)+';');
так попробуйте
maLoy*508 вне форума Ответить с цитированием
Старый 04.05.2011, 20:43   #9
6666
Пользователь
 
Регистрация: 21.03.2011
Сообщений: 44
По умолчанию

[QUOTEform5.ADOQuery2.SQL.Add('INSER T INTO [Таблица1] ([Оценко]) VALUES ("'+IntToStr(oko)+') WHERE [фамилия]='+QuotedStr(s)+'");');][/QUOTE]
так избавился от выше указанной ошибки. но возникла другая(((
Изображения
Тип файла: gif Безымянный.gif (16.0 Кб, 80 просмотров)
6666 вне форума Ответить с цитированием
Старый 04.05.2011, 20:46   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от maLoy*508
Там же написано "Пропущен символ ( ; ) в конце инструкции SQL"
А вот далеко не всегда можно верить тому, что написано!!

Ребят, Вы что?! Какое WHERE в запросе на добавление данных по INSERT ?!!!

Asseess пытается сообщить, что он уже ожидает конец команды, а тут ещё что-то продолжается, какое-то WHERE левое..

INSERT вставляет данные в таблицу. ДОБАВЛЯЕТ ЕЩЁ ОДНУ ЗАПИСЬ. Добавляет строчку, если Вам так понятнее! И баста!
Никаких WHERE

а Вам, скорее всего нужен UPDATE
Код:
form5.ADOQuery2.SQL.Text := 'UPDATE [Таблица1] '+
'set [Оценко] = '+IntToStr(oko)+' WHERE [фамилия]='+QuotedStr(s);
form5.ADOQuery2.ExecSQL;
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление в БД vilini БД в Delphi 4 23.07.2009 13:16
Добавление в БД Claster БД в Delphi 3 26.05.2009 21:12
добавление в добавленное StasSv Microsoft Office Excel 4 13.11.2008 17:22
Добавление в БД Dissonance БД в Delphi 3 05.06.2008 21:22
Добавление Holodok БД в Delphi 1 09.05.2008 18:01