![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Как можно добавить массив чисел с 1 до 23 в базу данных SQL Server через ADO?Этот массив отображается у меня на стринггриде.
Вот код Код:
private
dbHours: array of double;
procedure TForm1.Set24HourGrids;
var
k: integer;
str3: string;
begin
with StringGrid1 do
begin
RowCount:= 26;
Cells[0,0] := 'Часы;
Cells[1,0] := 'План';
for k:=1 to 24 do
Cells[0,k] := IntToStr(k);
str3:=Cells[0,k];
dbHours[k]:= StrToFloat(str3);
end;
end;
далее
procedure TForm1.BitBtn3Click(Sender: TObject);
var
i,j: integer;
str1,str2: string;
begin
for i:=1 to StringGrid1.RowCount-2 do
begin
DataMod.Command.Parameters.ParamByName('Hour').Val ue:=dbHours[i];
DataMod.Command.Execute;
four.Close;
four.Open;
end;
end;Но,ничего не работает.Может кто-нибудь видит ошибку? ![]() Последний раз редактировалось exap, 23.09.2008 в 11:36. |
|
#2
|
||||
|
||||
|
Вот тут:
Код:
DataMod.Command.Parameters.ParamByName('Hour').Val ue:=dbHours[i];ЗЫЖ И вообще, за такой код надо расстреливать сразу. Длина массива не устанавливается, массив не заполняется. Ты бы почитал что тебе компилятор пишет, я думаю много интересного узнаешь. Странно что это вообще компилится. |
|
#3
|
|||
|
|||
|
Код:
procedure TForm1.BtBtn3Click(Sender: TObject);
var
i,j: integer;
str1,str2: string;
begin
SetLength(dbHours,25);
for i:=1 to StringGrid1.RowCount-2 do
begin
dbHours[i]:= IntToStr(i);
DataMod.Command.Parameters.ParamByName('Hour').Value:=dbHours[i];
DataMod.Command.Execute;
four.Close;
four.Open;
end;
end;спасибо) |