|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Из StringGrid в бд
Доброе время суток.
Никак не могу понять, как написать SQL команду на добавление данных в бд из String Grid. Делаю так: Код:
for Row := StringGrid1.RowCount - 1 downto StringGrid1.FixedRows do for Col := StringGrid1.FixedCols to StringGrid1.ColCount - 1 do begin S:=StringGrid1.Cells[Col,1]; //Это от безысходности DataModule3.ADOQuery1.Active:=false; DataModule3.ADOQuery1.SQL.Text:='INSERT INTO org (num, okpo, inn, org, main, fio, index, okato, adress) VALUES ('+S+')'; DataModule3.ADOQuery1.Active:=true; end; end; Посоветуйте, как правильней сделать. Последний раз редактировалось Admin, 27.05.2013 в 21:03. |
#2
|
|||
|
|||
Цитата:
Для одной строки: Код:
function GetQuery(N : Integer) : String; var S : String; I : Integer; begin S := StringGrid1.cells[0,N]; For I := 1 To StringGrid1.ColCount-1 Do S := S + ',' + '''' + StringGrid1.cells[I,N] + ''''; Result := 'INSERT INTO org (num, okpo, inn, org, main, fio, index, okato, adress) VALUES ('+S+')'; end; ЗЫ. Проверь только, что у Cells первым идет колонка. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Yasha (27.05.2013)
|
#3
|
|||
|
|||
Уже решила с помощью ADODataSet) Но все равно спасибо)
|
#4
|
||||
|
||||
на insert/update нужен ExecSQL, а не open (active)
жми F1 Я за здоровый экстрим! Спасибо за "спасибо") |