|
|
#1
|
|||
|
|||
Цикл в таблице
Помогите разобраться с такой задачей, есть Edit в него пишется число (количество), по нажатии кнопки необходимо, что бы в ADODataSet добавилось количество записей равному указанному числу в Edit, так что бы в поле "Номер" последовательно происходила нумерация 1, 2, 3, и так до i:=StrToInt(Edit1.Text)
что то вроде этого Код:
var i: integer; index: integer; begin index:=0; i:=StrToInt(Edit1.Text); for index:=0 to i do DataModule2.ExDS.Insert; DataModule2.ExDS.FieldValues['Номер экземпляра']:=index+1; DataModule2.ExDS.Post; |
#2
|
||||
|
||||
Не занимайтесь хернёй, делайте insert/update таблицы через запрос.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#3
|
|||
|
|||
А как такой запрос написать для ADODataSet?
|
#4
|
||||
|
||||
Никакой.
Надо писать запрос для ADOCommand, типа insert into table(...) values(...). — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение: | ||
Brons14 (28.05.2015)
|
#5
|
|||
|
|||
А можно подробнее, в инете не нашел информации как запрос писать в ADOCommand, я создал его, а дальше куда писать запрос и как, что бы по нажатии кнопки он добавлял записи определенного количества в ADODataSet
|
#6
|
|||
|
|||
твоя проблема в том, что ты не обрамил тело цикла в begin..end. Соотв. в цикле у тебя выполняется только первая команда.
Код:
for index:=0 to i do begin DataModule2.ExDS.Insert; DataModule2.ExDS.FieldValues['Номер экземпляра']:=index+1; DataModule2.ExDS.Post; end; Можно, конечно, добавлять запросами через ADOCommand (кстати, если не изменяет память, то подобный запрос можно выполнить и через ADOConnection, вроде у него есть метод ExecSQL), но с точки зрения выполняемых комманд это будет абсолютно тоже самое, только, в случае использования прямого запроса, надо будет еще и перечитать открытый DataSet. Тут надо смотреть что же тебе надо на самом деле. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Brons14 (28.05.2015)
|