| 
| 
 | Вопрос # 5 202/ вопрос решён / | 
 |  Приветствую, уважаемые эксперты! У меня есть база данных со столбцом "Экзамен",подскажите как сделать что бы при нажатии на CheckBox в этом столбце появлялась запись "1". только сделать это все надо через ADOCommand. Вот пробовал че то не получилось что исправить? 
 begin
 if sCheckBox1.Checked= true then ADOCommand1.CommandText:= 'insert into ' + sEdit1.text + '( Экзамен) ' + ' values ('''+sCheckBox1.Caption+''')';
 end;
 
 недобовляет, незнаю как прописать что при выборе надо добавить 1.
 
|  |   Вопрос задал: Анучин (статус: Посетитель)Вопрос отправлен: 15 апреля 2011, 22:14
 Состояние вопроса: решён, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 5; последнее сообщение — 16 апреля 2011, 00:48; участников в обсуждении: 3. 
|   | VKHacker (статус: 1-ый класс), 15 апреля 2011, 22:43 [#1]:Может быть ошибаюсь, но как мне кажется, что если заключать значения в двойные кавычки, то должно сработать... 
 
 ADOCommand1.CommandText := 'insert into ' + sEdit1.text + '(Экзамен) values ("'+sCheckBox1.Caption+'")';
 И еще(возможно вы забыли):
 
 
   ADOCommand1.Execute; 
 
 Т.е., исправляя ваш пример, получаем:
 
 
 if sCheckBox1.Checked then
begin
ADOCommand1.CommandText := 'insert into ' + sEdit1.text + '(Экзамен) values ("'+sCheckBox1.Caption+'")';
ADOCommand1.Execute;
end;Проверял, добавляет.
 |  
|   | Анучин (статус: Посетитель), 15 апреля 2011, 23:01 [#2]:нет, так то же не получается, выдает ошибку :Несоответствие типов данных в выражении условия отбора. |  
|   | VKHacker (статус: 1-ый класс), 15 апреля 2011, 23:05 [#3]:Условие отбора это по идее SELECT, а не INSERT INTO. А вы делает вставку... 
 Может быть столбец "Экзамен" имеет тип "Числовой"?
 
 Попробуйте заменить строку запроса на
 
 
 'insert into ' + sEdit1.text + '(Экзамен) values (1)' |  
|   | Анучин (статус: Посетитель), 15 апреля 2011, 23:10 [#4]:да!!! все, так заработало, спасибо!!!! |  15 апреля 2011, 23:11: Статус вопроса изменён на решённый (изменил автор вопроса — Анучин) 
|   | bugmenot (статус: 3-ий класс), 16 апреля 2011, 00:48 [#5]: Цитата: CheckBox1.Checked= true LOL
 if 2*2=4=true<>false=true then
 виконання програми розпочинається з того самого мiсця, де призупинилося.
 
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |