Главная страница
    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.47 MB
Время: 0.011 c
2-1145374069
Lk
2006-04-18 19:27
2006.05.07
Работа с файлами


15-1144848011
Толян
2006-04-12 17:20
2006.05.07
MySQL


3-1142091496
Sollo
2006-03-11 18:38
2006.05.07
dbExpress сумма вычисляемых полей


15-1144923413
Бугага
2006-04-13 14:16
2006.05.07
Работа с Карт Ридером


2-1145255059
Kosyak
2006-04-17 10:24
2006.05.07
произвольное изменение числа





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский