Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.012 c
2-1145463720
@gent
2006-04-19 20:22
2006.05.07
Помогите пожалуйста. Фрейм не могу добавить


15-1145029888
ArtemESC
2006-04-14 19:51
2006.05.07
endian - что за слово такое?


2-1145336717
vegarulez
2006-04-18 09:05
2006.05.07
Как из фомы 1 передать занчение параметры в форму 2?


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


15-1145014681
Oxotnik
2006-04-14 15:38
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский