Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Множественный insert / 4 сообщений из 4, страница 1 из 1
09.05.2019, 06:20
    #39811609
palladin600
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Множественный insert
Ребят, такое дело,
код генерит на клиенте 1000 строк, типа:
Код: plaintext
1.
2.
3.
"INSERT INTO t..."
"INSERT INTO t..."
"INSERT INTO t..."
...

мне надо каждую строку заинсертить в базу. Ну я, короче, делаю после каждой строки:
Код: vbnet
1.
CN(0).Execute sQUERY, 0



по каждой записи капец долго. А сейчас как под 5000 записей, то это край.

Скажите, как пачкой заинсертить? Может какой отвязанный рекордсет создать, его набить данными, а потом сделать INSERT INTO t1 (SELECT * FROM MyRecordset) или как обычно вы делаете?
...
Рейтинг: 0 / 0
09.05.2019, 08:13
    #39811615
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Множественный insert
palladin600, либо набор открыть на вставку и курсором бежать или в цикле Insert Into Values
...
Рейтинг: 0 / 0
10.05.2019, 09:30
    #39811809
Множественный insert
Если БД с таблицей, куда пишутся данные находятся не на локальном диске, то существенно ускорить процесс можно, если включить его в транзакцию. Но, если у вас запросы Insert Into Values , то это, в принципе, не очень хорошее решение.

ADODB.Recordset можно настроить так, что все добавленные в него записи будут писаться на диск оптом при выполнении UpdateBatch.
...
Рейтинг: 0 / 0
12.05.2019, 10:10
    #39812165
Bango Bongo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Множественный insert
и в чём проблема собирать строки по 500 записей на вставку ? или акс не держит такой формат?
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Множественный insert / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]