Сброс массива в *.mdb файл.

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Тимофей
Обычный пользователь
Обычный пользователь
 
Сообщения: 83
Зарегистрирован: 01.03.2004 (Пн) 10:01
Откуда: Киров

Сброс массива в *.mdb файл.

Сообщение Тимофей » 01.06.2005 (Ср) 8:46

Народ помогите !

Надо сбросить массив данных в поля таблицы базы данных.
Я делаю через объект Recordset методом AddNew или Edit, но это занимает некоторое время (массив 150-200 значений). Писали, что быстрей скинуть через *.xml файл. Помогите как.

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 01.06.2005 (Ср) 8:51

:) Я бы и сам с радостью узнал, как массив по быстрому скинуть через XML в MDB.

Писал это, все же я думаю, человек, котороый ни в MDB ни в XML ничего не смыслит.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 01.06.2005 (Ср) 9:01

Создай SQL-запрос, который будет добавлять записи в БД (INSERT ...) и запусти его. Будет чуть быстрее.
Lasciate ogni speranza, voi ch'entrate.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 01.06.2005 (Ср) 9:28

Быстрей всего открыть рекордсет с клиентским курсором, заполнить и сделать UpdateBatch

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 01.06.2005 (Ср) 10:06

при работе с mdb (имхо) лучьше использовать DAO, он работает быстрее чем ADO, хотя если нужно всего 150 -200 данных то разницу конечно не почуствуешь.
Guten Morgen! А если не Guten, то тогда это и не Morgen...

Тимофей
Обычный пользователь
Обычный пользователь
 
Сообщения: 83
Зарегистрирован: 01.03.2004 (Пн) 10:01
Откуда: Киров

Сообщение Тимофей » 01.06.2005 (Ср) 12:00

А по конкретней нельзя ?

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 01.06.2005 (Ср) 15:10

куда уж конкретнее? Что непонятно то? :shock:
Guten Morgen! А если не Guten, то тогда это и не Morgen...

Тимофей
Обычный пользователь
Обычный пользователь
 
Сообщения: 83
Зарегистрирован: 01.03.2004 (Пн) 10:01
Откуда: Киров

Сообщение Тимофей » 01.06.2005 (Ср) 15:13

У меня и так DAO

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 01.06.2005 (Ср) 15:19

слушай, извени, непонимаю, если у тебя DAO , то что ж ты тогда "по коркретнее" хочешь? :?
Guten Morgen! А если не Guten, то тогда это и не Morgen...

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 01.06.2005 (Ср) 22:45

Alex_2005 писал(а):при работе с mdb (имхо) лучьше использовать DAO, он работает быстрее чем ADO,


Груша и яблоки разные вещи :lol:

Проще говоря - выпей йаду!
Последний раз редактировалось Sebas 01.06.2005 (Ср) 22:48, всего редактировалось 1 раз.
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 01.06.2005 (Ср) 22:47

Antonariy писал(а):Быстрей всего открыть рекордсет с клиентским курсором, заполнить и сделать UpdateBatch


делай так, тока это для АДО

Если нада XML, то тоже через АДО -создай рекордсет ... у него есть метод записи в XML
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Тимофей
Обычный пользователь
Обычный пользователь
 
Сообщения: 83
Зарегистрирован: 01.03.2004 (Пн) 10:01
Откуда: Киров

Сообщение Тимофей » 02.06.2005 (Чт) 12:32

Antonariy писал(а):Быстрей всего открыть рекордсет с клиентским курсором, заполнить и сделать UpdateBatch


[quote="Sebas"]
<делай так, тока это для АДО

Я про клиентский курсор не слышал. Может покажете на примере или ссылку дадите ?

codemaster
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 604
Зарегистрирован: 13.02.2004 (Пт) 13:35

Re: Сброс массива в *.mdb файл.

Сообщение codemaster » 02.06.2005 (Чт) 12:48

Тимофей писал(а):Народ помогите !

Надо сбросить массив данных в поля таблицы базы данных.
Я делаю через объект Recordset методом AddNew или Edit, но это занимает некоторое время (массив 150-200 значений). Писали, что быстрей скинуть через *.xml файл. Помогите как.


трудно сказать не зная структуры XML

для ADO:
Код: Выделить всё
rs.Save "c:\temp\myfile.xml",adPersistXML
You can recreate the ADO recordset later by using this syntax with the Open method:

rs.Open
"c:\temp\myfile.xml",,adOpenForwardOnly,adLockReadOnly,adCmdFile



далее думаю понятно
//<-
Mit freundlichen Grüßen
//->


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 168

    TopList