powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Быстрая запись в базу данных
36 сообщений из 36, показаны все 2 страниц
Быстрая запись в базу данных
    #32341092
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть данные о миллионе записей, необходимо записать это в БД MS Access. запись по одной строчке insertrecord -занимает очень много времени. Как это сделать оптимальне (быстрее)
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341094
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из SQL в MDB?
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341123
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В Builder у меня есть некая таблица данных, её надо сохранить MS Access .mdb я юзаю ADO. 6000 зхаписей примерно пишутся 2 минуты командой InsertRecord примерно столько же через SQL insert into
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341124
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну а в Билдере она откуда взялась, эта таблица? Ручками набивали?
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341127
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВ Builder у меня есть некая таблица данных
О как! Встречаем новую RDBMS - Билдер!
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341138
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Таблица взялась из select из таблицы, потом наней накладывается журнал изменений, обсчитывается( амортизация) результат надо сохранить.
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341146
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже ЛП прав.
С Днем Рождения New RDBMS - Билдер!
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341172
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Когда ругаетесь объясняйте кем обзываете. RDBMS - это как?
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341177
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
По-русски это РСУБД.
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341185
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ха-ха. РСУБД - реляционная система управления базами данных
Короче, стебется народ.
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341191
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Даже если предположить что это плохо ( появление нового RDBMS Builder) - это не дайт ответ на поставленный вопрос. Кто если сталкивался, напишите. может кто то сравнивал, вобщем буду рад любой полезной инфе. Заранее благодарен
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341387
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Mihonin

Посмеялись и буде :)

Ответь на сл. вопросы (и как можно подробней)

Где хранились(ться) 1 000 000 записей (тип базы)
Что происходит с ними при обработки, что происходит с оригиналом записей
Как обрабатываешь и чем (ADO, DAO)
Где находиться конечная запись (локально, в сети, в инете)
Прогишь на Дельфи?
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341445
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
5) Виктор, он же написал - на билдере => (90%) Borland C++ Builder
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341517
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Темный
>Виктор, он же написал - на билдере => (90%) Borland C++ Builder

А что такое в MS Accesse Borland C++ Builder? И почему об этом все должны знать? Я, например, про С++ знаю, только то, что 3-я буква алфавита с 2 знаками +.

:)
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32341532
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть локальная база (не клиент сервер). в ней есть табличка (картотека) там "много" записей. есть журнал действий над этой картотекой ,там число записей "поменьше" . Дейсвия - накладываем журнал действий на картотеку. получаем картотеку на нужный период, проиводим вычисления ( расчёт амортизации). и пишем файл отчёта (за 12 месяцев сразу, таким образом записей = "много"*12). Юзаю компоненты ADO. Microsoft Jet 4.0 (понятно что он тормозной, но всё равно, когда обработка идёт одним SQL например копирования из одной таблички в другую, это делается "на лету")
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32342563
---------------
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пиши транзакции по 1000 записей - будет быстрее
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32342612
Фотография Varan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihonin , у меня сходная проблема, только строк поменьше (10-15 тыс), и писать надо с компа, где они "возникли" в БД на сервере (MDB). Сейчас все на DAO и работает просто отвратительно. Склоняюсь к мысли, что надо сделать типа того, как написал Guest - брать по 1000 строк и select from insert into, если что не прошло - откат транзакции и повтор, следующие 1000 строк...
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343320
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
select from insert into - работает быстро, но суть в том что перед insert into надо провести вычисления. над курсором полученный из select. и проблема в том что к этому курсору никак не обратится SQL. Я делаю insert into Values(:id,...) по 1 записи через параметры- ставлю prepared=true. и пототм в компоненты SQL уже не меняю, а только значени параметров - в результате получил до 30% уменьшения времени записи, но всё равно долго. 84000 записей - 400 секунд ( ны быстрой тачке). Но суть в том что, если блоком это копировать select from insert into -это в делается за несколько секунд.
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343337
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, ну запихни ты свои чудо-данные во временную таблицу (одним запросом), обработай их как хочешь, запузырь их из временной таблицы обратно в основную (одним запросом)
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343507
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если бы ADP то там есть операции массовой вставки

а в аксессе наверное надо
1 импортировать во временную таблицу
DoCmd.TransferDatabase acImport

а затем обрабатывать запросами
так будет быстрее
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343526
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поставь ради теста MSDE2000 и попробуй сделать все запросами в нем - задача как раз для него. можно получить увеличения быстродействия до нескольких тысяч раз... если конечно все сделать поуму
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343769
Фотография Varan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihonin
"перед insert into надо провести вычисления. над курсором полученный из select. и проблема в том что к этому курсору никак не обратится SQL"

- разъясни, если не трудно, про курсор, я что-то не совсем понял (не шибко грамотный).
Я до сих пор не сделал на SQL, поскольку над каждыми элементом данных строки мне надо провести ряд проверок, и писать только то, что эти проверки прошло, на SQL это устроить сложнее.
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343854
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to Varan
Я думал, что SQL запрос вернёт cursor( который В ОЗУ) и с этим курсором средствами БД проводить проверки, расчёты.( что будет быстро т.к. это в ОЗУ а не на винте), а потом обработанный курсор записать на жёсткий диск. но доступа к курсорам нет :( (а каждый раз работать через винт - будет медленне). ПОэтому считываю в данные в свою структуру, обрабатываю, и за писываю на винт. по одной записи.
я нашёл как ускорить. Включаем транзакцию, и по больше ОЗУ на борт машины. Таким образом заставим БД кэшировать в ОЗУ. при подверждении транзакции он все изменения одним обращением записывает.
Вот только если ОЗУ мало, то ОС включает подкачку (жёсткий диск) и результат получаем обратый.
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343887
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
товарисчи !!!!!
если программа при самом оптимальном коде думает дольше чем юзер успевает нажать следующую кнопку - это маструбация (преувеличиваю)

вы конечно можете пытаться ставить ставить рекорд скорости на велосипеде, но в самом деле любой самолет будет быстрее и напрягаться не надо...
тем более зачастую нет никаких противопоказаний чтобы не воспользоваться более быстрой технологией
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343904
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну 5 минут для 6000 записей в БД, и при увеличении размера в 10 раз, время тоже должно вырасти. а более быструю технологию использовать хорошо но не в этом случае. т.е. jet - это требование к задаче. вобщем и на ёлку сесть и ... рыбку съесть. :)
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343958
Фотография Varan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АлексейК,
Самолет стоит дороже, чем велосипед, да и разбиваться на нем больнее.
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32343975
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если сравнивать клиент - серверные технологии и файловые

по поводу разбиваться больнее - если насмерть то побарабану на чем

если по поводу вероятности получить порчу базы - сервер гораздо надежнее

если по вероятности порчи винча и всех данных то это зависит от тебя как ты делаешь резервное копирование

а в плане цены - MSDE2000 прилагается к офису и тем самым не дороже аксесса, а за частую и то и другое пиратское

выходит так купили: комплект велосипед и самолет, но даже тогда , когда надо получить рекорд скорости на самолет все равно не сяду потому что боюсь/ не хочу учиться
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32344013
Фотография Varan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АлексейК
Все, о чем ты говоришь, относится к разделу "Сравнение СУБД". Если люди ходят по земле, а не летают, как птицы, значит на то есть причины.
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32344071
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот тут стесняюсь спросить, а MSDE2000 разве не НАСТОЛЬНАЯ версия Скуль-Сервера? Сетевой Скуль-Сервер денюшек поболее чем офис стоит... Ошибаюсь?
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32344143
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сегодня у меня музыкальное настроение. Только все по Ленинграды с незабвенным Шнуром:
"Почему люди не летают как птицы?
Потому что отрастили большие ягодицы!"
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32344202
Odess
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Нуф-Нуф - да нет, MSDE2000 полноценный сервак. Там только ограничение на размер базы (вроде 2 гига) и не более 2 процессоров.

Кстати, это оффтопик, но слышал что 1С вроде под 8-ю версию свой собственный SQL сервер разработала. Кто то в курсе что за чудо? ;-)
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32344204
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+ у MSDE ограничение на пользователей до 5 штук, ограничения по репликации (м.б. только подписчиком), нет SQL Mail (но это и не беда).
Если к MSDE добавить клиентов от полноценной версии, то получится платный MS SQL Personal
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32344207
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Под "клиентами к серверу" надо понимать Enterprise Manager/Query Analyzer/Profiler. Самое ценное - Profiler.
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32344210
Odess
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 SV
Я не нашел явных ограничений на 5 пользователей. Вот здесь подробнее:
http://www.osp.ru/win2000/sql/admsecrets/200306ss306_print.htm
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32344322
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Odess \r
>Я не нашел явных ограничений на 5 пользователей.\r
\r
Из твоей ссылки:\r
Код: plaintext
1.
2.
3.
4.
5.
 1 . MSDE оптимизирует не более пяти пакетов\r
В MSDE имеется модуль управления параллельной работой, который в состоянии оптимизировать\r
производительность системы при загрузке одновременно не более пяти пакетов (batch workload).\r
Как только вы запускаете одновременно большее число работ, модуль управления постепенно\r
 "притормаживает"  систему. MSDE не удаляет предложенные пакеты, но их обработка сопровождается\r
снижением производительности системы.
\r
\r
Указанное так же верно и для SQL Server 2000 Personal Edition. Правда действительно речь надо вести не о 5 юзерах, а о 5 одновременно выполняющихся заданий (батчей) (а юзер м.б. и 1). Вот здесь аналогичный вопрос /topic/54790\r
\r
Правда в МСДН встретил и такое:\r
[/src]MSDE doesn\'t limit the number of users who can connect to its database, but is optimized for five users[/src]\r
\r
Проверить скока этих batch workload у вас было можно с помощью команды DBCC CONCURRENCYVIOLATION
...
Рейтинг: 0 / 0
Быстрая запись в базу данных
    #32344357
Mihonin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо за ответ на мой вопрос %)))
...
Рейтинг: 0 / 0
36 сообщений из 36, показаны все 2 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Быстрая запись в базу данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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