Форум: "Базы";
Текущий архив: 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.007 c