|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Вопрос по ADOQuery
Здравствуйте!
Задача: посредством ADOQuery и SQL-запроса осуществить ввод записи в таблицу oborud полей ur1,ur2,ur3,ur4,n_u,isp,rik,tim Вот такой вот код Код:
procedure TForm4.Oborud_sql2Execute(Sender: TObject); begin form4.Query2_oborud.SQL.Clear; form4.Query2_oborud.SQL.Add('INSERT INTO oborud (ur1,ur2,ur3,ur4,n_u,isp,rik,tim) VALUES (:ur1,:ur2,:ur3,:ur4,:n_u,:isp,:rik,:tim)'); form4.Query2_oborud.Parameters.ParamByName('ur1').Value := ur1; form4.Query2_oborud.Parameters.ParamByName('ur2').Value := ur2; form4.Query2_oborud.Parameters.ParamByName('ur3').Value := ur3; form4.Query2_oborud.Parameters.ParamByName('ur4').Value := ur3; form4.Query2_oborud.Parameters.ParamByName('n_u').Value := form5.Memo1.Text; form4.Query2_oborud.Parameters.ParamByName('isp').Value := form3.polz; form4.Query2_oborud.Parameters.ParamByName('rik').Value := StrToInt(form5.Edit1.Text); form4.Query2_oborud.Parameters.ParamByName('tim').Value := now; form4.Query2_oborud.Active := true; end; В чём накрутил, не подскажете? Последний раз редактировалось Red_Garry, 12.10.2012 в 21:39. |
#2
|
|||
|
|||
После ввода запроса в компонент надо зайти в Object Inspector'е в параметры и настроить их. Вообще, непонятен смысл делать параметры, если ты все-равно задаешь запрос динамически. Генерируй запрос сразу со значениями.
|
#3
|
|||
|
|||
Вопрос по ADOQuery
я извиняюсь за бестолковость, я только учусь, а сразу со значениями - это как? Можно код?
|
#4
|
|||
|
|||
заработал мой код: оказалось, что в компоненте ADOQuery я забыл заполнить свойство Connection. Но всё равно вопрос в силе: как проще выполнить указанную задачу? Так, чтоб без параметров
|
#5
|
|||
|
|||
Ну, примерно так:
Код:
const sQuery = 'INSERT INTO oborud (''%s'',''%s'',''%s'',''%s'',''%s'',''%s'',%d,''%s'')'; VALUES (:ur1,:ur2,:ur3,:ur4,:n_u,:isp,:rik,:tim)'; begin ADOQuery.SQL.Text := Format(sQuery,[ur1,ur2,ur3,ur4,form5.Memo1.Text,form3.polz,StrToInt(form5.Edit1.Text),DateTimeToStr(Now)]); ADOQuery.ExecSQL; PS. не знаю тип form3.polz, описал как строку. Ну и с датой надо будет посмотреть поподробнее, хотя now можно на триггере выставлять, тогда его вообще из запроса можно исключить. |
#6
|
|||
|
|||
Большое спасибо за науку! Сегодня буду пытаться
|