Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.07;
Скачать: CL | DM;

Вниз

TTable   Найти похожие ветки 

 
DimMih ©   (2006-04-19 17:04) [0]

Работаю с компопентом TTable, у которого есть свойство TableType= ttASCII - текстовая таблица, в которой поля разделяются запятыми и заключаются в кавычки. Т.е. есть текстовый файл(текстовая таблица) данные из которого нужно перебросить в таблицу базы данных SQL. Вот файл и код

"Заготівельна дільниця","Иванов В. О.","01.03.06","2:14:44"
"Заготівельна дільниця","Башинський И. А.","01.03.06","8:02:44"
"Заготівельна дільниця","Петренко В. К.","01.03.06","8:14:44"
if OpenDialog1.Execute then
 VremjaTable:=TTable.Create(nil);
 with VremjaTable do  begin
    Active:=false;
    TableName:=OpenDialog1.FileName;
    TableType:=ttASCII;
 end;
   try
    VremjaTable.Open;
    VremjaTable.First;
    while not VremjaTable.Eof do begin
      if InsertQuery.Active then InsertQuery.Active:=false;
         InsertQuery.Parameters[0].Value:=VremjaTable.Fields[0].Value;
         InsertQuery.Parameters[1].Value:=VremjaTable.Fields[1].Value;
         InsertQuery.Parameters[2].Value:=VremjaTable.Fields[2].Value;
         InsertQuery.Parameters[3].Value:=VremjaTable.Fields[3].Value;
         InsertQuery.ExecSQL;
         VremjaTable.Next;
  end;
В процессе выполнения программы происходит ошибка. Подскажите пожалуйста в чём ошибка?


 
Desdechado ©   (2006-04-19 17:22) [1]

шел по улице, стукнули по голове
подскажите, за что?


 
Плохиш ©   (2006-04-19 17:26) [2]


> В процессе выполнения программы происходит ошибка. Подскажите
> пожалуйста в чём ошибка?

T.e. ты предлагаешь нам установить mssql-сервер, делфи, создать базу данных, в этой базе какую-нибуть таблицу, создать проект в делфи, вставить туда твой код, попытаться его выполнить и если возникнет ошибка, то постараться её решить и о решении сообщить тебе? Хорошо я готов за это взяться, но только после предоплаты 2000 евро.


 
DimMih ©   (2006-04-19 17:32) [3]

При присвонии значения первого параметра запроса выдается ошибка "List index out of bounds (0)".


 
Плохиш ©   (2006-04-19 17:34) [4]

Параметров в sql-запросе нет.


 
DimMih ©   (2006-04-19 17:38) [5]

А это не параметры????

if InsertQuery.Active then InsertQuery.Active:=false;
        InsertQuery.Parameters[0].Value:=VremjaTable.Fields[0].Value;
        InsertQuery.Parameters[1].Value:=VremjaTable.Fields[1].Value;
        InsertQuery.Parameters[2].Value:=VremjaTable.Fields[2].Value;
        InsertQuery.Parameters[3].Value:=VremjaTable.Fields[3].Value;
        InsertQuery.ExecSQL;


 
Плохиш ©   (2006-04-19 17:41) [6]


> А это не параметры????

Нет. Это попытка присвоить что-то коллекции Parameters. Но вот это "List index out of bounds (0)" говорит, что в коллекции элементов нет. Начни читать чего-нибуть.


 
DimMih ©   (2006-04-19 17:47) [7]

Insert into WorkTime
( Uchastok, Ispolnitel, Data, Vremja) values
( :Uchastok, :Ispolnitel, :Data, :Vremja)


 
Desdechado ©   (2006-04-19 17:54) [8]

и где оно в тексте?


 
Плохиш ©   (2006-04-19 17:59) [9]


> DimMih ©   (19.04.06 17:47) [7]

Так чему равно InsertQuery.Parameters.Count?

PS. А из строчки if InsertQuery.Active then InsertQuery.Active:=false; проверку можно выкинуть, да и саму строчку надо вынести за цикл.


 
YurikGL ©   (2006-04-19 21:55) [10]


> DimMih ©   (19.04.06 17:47) [7]

Приведи код целиком с

> Insert into WorkTime
> ( Uchastok, Ispolnitel, Data, Vremja) values
> ( :Uchastok, :Ispolnitel, :Data, :Vremja)

и последующим присвоением параметров.


 
DimMih ©   (2006-04-20 09:29) [11]

Для Desdechado:"Оно в компоненте"


 
DimMih ©   (2006-04-20 09:43) [12]

Уважаемый YurikGL, текст запроса находится  не в самом коде, а в компоненте TADOQuery. Проблема я думаю в "текстовой таблице". При открытии таблицы не определяются её поля. VremjaTable.FieldCount=1, а должно быть 4


 
YurikGL ©   (2006-04-20 22:42) [13]


> DimMih ©   (20.04.06 09:43) [12]

Попробуйте его явно присвоить перед присвоением параметров... Если не получится - приведите код



Страницы: 1 вся ветка

Текущий архив: 2006.05.07;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.042 c
2-1145466770
0101010101
2006-04-19 21:12
2006.05.07
TDrawGrig


15-1145001120
balepa
2006-04-14 11:52
2006.05.07
Как обратиться к переменной %SYSTEMROOT% ?


3-1142497390
SLP
2006-03-16 11:23
2006.05.07
Как определить в активном экземпляре Excel кол-во страниц?


15-1145089520
Cerberus
2006-04-15 12:25
2006.05.07
Хостинг


4-1139505659
EarlVadim
2006-02-09 20:20
2006.05.07
Консоль (через CreateProcess) не может достучаться в Интернет