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

Вниз

ADO+Access   Найти похожие ветки 

 
Vacula   (2002-11-27 19:26) [0]

Доброго времени суток!
Проблема следующая. Записываю из файла в массив TStringList данные. Затем через ADO заношу данные в базу Access. Данных - 32000 записи. Второй процесс длится около 8-10 минут. Как ускорить запись данных? Спаисбо, с уважением


 
sniknik   (2002-11-27 19:36) [1]

убрать промежуточный TStringList и заносить из файла сразу в Access.


 
Vacula   (2002-11-27 19:43) [2]

То есть, сделать какую нибудь промежуточную переменную и ей присваивать необходимые значения и ее подставить в параметры запроса? Но это тоже получается очень медленно. Я прямо из файла...??? Не знаю как, да и нужно делать предварительную обработку данных из файла для формирования соответствующих полей (Дата, Имя, Что и т.д.)... подскажите, что имеется в виду?
Спасибо


 
vacula   (2002-11-27 20:38) [3]

Огромная просьба, подскажите... Действительно очень важно. Может я как-то тупо объясняю проблему? Но уже не сплю 30 часов, с этим быстродействием сижу....


 
BlackTiger   (2002-11-27 21:22) [4]

Довольно странно... Ты уверен, что тормоза именно при записи, а не при разборе строк?
В любом случае:
1 Сделай TQuery
2 Преобразуй свой файлик в набор комманд типа (записей так по 1000 на запрос):
while not eof(f) do begin
//
// здесь читаешь и преобразуешь строку файла в массив значений,
// к примеру
//
Query1.SQL.Clear;
Query1.SQL.Add("INSERT INTO MyTable (Field1,Field2,Field3)");
Query1.SQL.Add("VALUES ");
Query1.SQL.Add("(");

//while {...} do begin
Query1.SQL.Add("(""A1"",""27.11.2002"",""50.56""),");
Query1.SQL.Add("(""A2"",""27.11.2002"",""34.00""),");
Query1.SQL.Add("(""A3"",""27.11.2002"",""50.23""),");
Query1.SQL.Add("(""A4"",""27.11.2002"",""12.78"")");
//end;
Query1.SQL.Add(")");
Query1.ExecSQL;
end;

Только вот уточни синтаксис многострочного INSERT-а. Не помню - надо записи разделять запятыми или нет.


 
alcat   (2002-11-27 22:38) [5]

Всем Здрасте!!!
BlackTiger, а не мог ли бы ты, пожалуйста, написать поточне синтаксис многострочного INSERTа.
А то от Кафя уже даже спать хочеться.
Хоть скажи где посмотреть.
Заранее благадарен!


 
vacula   (2002-11-28 01:21) [6]

2BlackTiger
Спасибо, буду разбираться
2alcat
http://www.citforum.ru/database/sql_kg/4-3-shtmlhttp://www.citforum.ru/database/sql/stsql_9.shtml
посмотри одним глазом, что здесь, но вряд ли это практически поможет... я тоже не могу найти точного описания синтаксиса


 
irenfd   (2002-11-28 04:39) [7]

А что если попробовать:
Format("INSERT INTO Table %s...%s и сразу подставлять строки из файла типа Readln(F)), только к сожалению теряется контроль над параметрами (кол-во полей, наличие и корректность)


 
alcat   (2002-11-28 15:56) [8]

2vacula Нет такого документа.....



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

Форум: "Базы";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.006 c
4-52022
GOD
2002-11-05 02:19
2002.12.16
Вопрос № 1


14-51901
Konsul
2002-11-24 14:47
2002.12.16
Прикольные видеоролики


4-52020
Lexa1900
2002-11-04 19:05
2002.12.16
Консольное приложение


1-51674
AlexT1000
2002-12-05 16:15
2002.12.16
Как отловить нажатия Alt ,Ctrl,Shift для всего приложения в целом


14-51893
-novichok-
2002-11-24 10:25
2002.12.16
Уважаемые мастера у меня проблема с шрифтами !!!..





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