17 / 17 / 3
Регистрация: 17.02.2010
Сообщений: 211

Скорость выборки из дбф-ки

23.06.2011, 10:18. Показов 1304. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Есть прога, собранная на фоксе, которая выводит на экран некоторые показатели работы оборудования. Выборка ведется последней записи из таблы. Показания меняются(обновляются) каждую минуту, и все работает достаточно быстро. Задумка есть переписать прогу на VC 2008 C#, и сходу уперся в выборку последней записи, ну вообщем не получается запрос Попробовал достать запись: "SELECT * FROM tablename LIMIT кол-во, 1" - тоже облом, работает на таблах скуэль и акцес а для фоксовских выкидывает в ошибку. Но печальнее всего меня поразила скорость подсчета записей:
C#
1
using(OleDbCommand comm = new OleDbCommand("Select COUNT(*) FROM s50let1.dbf",oCon))
в табле 1сотня тисячь записей и считает несколько сек. на фоксе это почти мгновенно. Вопрос, как выбрать последнюю запись из таблицы, есть ли в скуэле запрос такой???? И чтобы выборка велась как можно меньше времени.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.06.2011, 10:18
Ответы с готовыми решениями:

Скорость выборки в MongoDB
Есть таблица в монге, порядка 41К записей, 40 полей, из которых 30 - числовые, остальные - строки. Выборка из таблицы работает весьма не...

Нормальная скорость выборки
Добрый вечер. Помогите советом. Есть БД с 1 таблицей Вида айди, имя, фамилия, регион, адрес, всего 3 региона, 3 миллиона строк....

Результат выборки передать GET запросом для изменения условий другой выборки
Есть такая таблица menu: Таким запросом вывожу на страницу: <?php include ("bd.php"); function display_menus($parent = 0) ...

7
 Аватар для Ice_and_Fire
512 / 298 / 37
Регистрация: 22.06.2011
Сообщений: 929
23.06.2011, 10:52
Цитата Сообщение от Genadyi Посмотреть сообщение
Добрый день.
Вопрос, как выбрать последнюю запись из таблицы, есть ли в скуэле запрос такой????
По ключевому полю
T-SQL
1
2
Select * from T
Where ID=(select max(ID) from T)
И чтобы выборка велась как можно меньше времени.
Индексный файл должен быть в папке!
0
17 / 17 / 3
Регистрация: 17.02.2010
Сообщений: 211
23.06.2011, 12:26  [ТС]
Изначально табла была сделана только для хранения и накопления данных. В ней нет ключей, просто в них небыло необходимости, поля счетчика также нет. Ice_and_Fire, описываемый вами способ не подходит, а "трогать" таблицу пока нет возможности. На фоксе есть комманда перехода на последнюю запись: "GO BOTTOM" и потом выбираем из нужных полей данные, все это происходит быстро, поэтому вопрос как это сделать на С#?
0
 Аватар для Ice_and_Fire
512 / 298 / 37
Регистрация: 22.06.2011
Сообщений: 929
23.06.2011, 12:38
Genadyi, прочитайте что-нибудь про то, чем отличается БД от СУБД
За сим отлкланяюсь. Учите матчасть
0
334 / 270 / 18
Регистрация: 19.01.2011
Сообщений: 597
24.06.2011, 09:42
Как выбрать последнюю запись - Вам подсказал Ice_and_Fire, если нету ключевого поля - можно использовать другое уникальное поле, например у Вас в таблице есть поле даты и времени, можно использовать его. Другое дело - насколько это быстро , если база не индексирована. Учитывайте что Foxpro использует свои механизмы для работы с базами, а Вы используете универсальные , которые всегда будут медленнее. У Мicrosoft есть Visual Foxpro - может стоит обратить на него внимание?
0
17 / 17 / 3
Регистрация: 17.02.2010
Сообщений: 211
24.06.2011, 10:52  [ТС]
Добрый день. Winsor, спасибо за разъяснения и предложения, я просто хотел убедиться в том что скоростью SQL не может побаловать пользователя, особенно на больших БД. Что касамо проги, то она написана на VFP 8-я версия, работает шустро. И мои порывы были направлены на плавный переход от фоксовских БД на скуэлевские или MySQL. Так что мои тупые вопросы на форуме дадут мне повод доказать руководству отказаться от плавности перехода ....
Всем спасибо за обсуждение. Удачи.
0
 Аватар для Ice_and_Fire
512 / 298 / 37
Регистрация: 22.06.2011
Сообщений: 929
24.06.2011, 10:59

Не по теме:

О Боже, он еще и работает...


Учите мат.часть! Вы путаете БД и СУБД !
0
334 / 270 / 18
Регистрация: 19.01.2011
Сообщений: 597
24.06.2011, 11:33
Скорость SQL - мгновенна... Вот только есть еще факторы как-то - неоптимизированность запросов, неоптимизированность настроек сервера БД, просто банальное неумение программистов нормально писать код для работы с СУБД. Если Вы сравните работу Вашего приложения с хранилищем , например , на nfs , где нибуть далеко в сети, и с работой PostgreeSQL сервера там же по выборке например в таблице с 1000000 строк - Вы будете неприятно удивлены что VFP проигрывает на несколько порядков. А есть еще такие вещи как отложенные процедуры... Так что - таки да... Не путайте БД и СУБД. Учите матчасть...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.06.2011, 11:33
Помогаю со студенческими работами здесь

Как проверить две выборки по критерию хи квадрат (есть функция chi2gof но она для одной выборки)
как проверить две выборки по критерию хи квадрат (есть функция chi2gof но она для одной выборки)

Можно ли исключить из выборки результаты предыдущей выборки?
Не могу придумать как лучше решить следующую задачу: Есть таблица с неким числовым полем, в котором хранятся семизначные номера....

Загрузка ДБФ
День добрый. Подскажите плизз. как осуществить следующее: в базу загрузил доки РКО из другой базы. и теперь у загруженных доков...

1c V.7.7, кодировка, ДБФ
1C v.7.7. Подскажите, плз, как сделать нормальную кодировку загружаемых данных из DBF-файла? Делаю следующее, не помогает: ...

ДБФ выгрузка
Код выгрузки ! вроде выгружает без руганий!!!!!! А при загрузке начинает ругаться типа-{Форма.Форма.Форма(321)}: Ошибка при вызове метода...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Как украсить новогоднюю елку с Q# и Qiskit
EggHead 24.06.2025
Что может быть необычнее, чем применить законы квантовой механики для украшения новогодней елки? Пока другие развешивают обычные гирлянды, я решил объединить свою страсть к квантовым вычислениям с. . .
Системы нулевого доверия на C#
UnmanagedCoder 24.06.2025
Традиционная архитектура безопасности работает по принципу средневекового замка: создаём высокие стены вокруг корпоративной сети, укрепляем ворота межсетевыми экранами и системами обнаружения. . .
Снова не мой путь. Циклическое среднее, я обеими руками за проверку условия, в ракурсе данной задачи - циклическое среднее в топку.
Hrethgir 24.06.2025
Привет. Такой вопрос - нужно выводить среднее математическое между двумя направлениями, интервал значений которых может лежать в диапазоне одного оборота по кругу. Проблема заключается в том, что. . .
Деплой Flask приложения
py-thonny 23.06.2025
За годы работы с Flask я натыкался на одни и те же грабли достаточно часто, чтобы наконец научится их обходить. И сегодня хочу поделится опытом, который сбережет вам немало нервных клеток. Начнем с. . .
WebAssembly и контейнеры в .NET Aspire для оркестрации распределенных архитектур
ArchitectMsa 23.06.2025
Я наблюдаю, как WebAssembly (или просто WASM) постепенно выходит за рамки своего первоначального предназначения — исполнения кода на стороне браузера. Теперь эта технология проникает в серверную. . .
Непрерывная интеграция для пакета Python
Mr. Docker 22.06.2025
Было 4 часа утра пятницы, когда я выпустил новую версию нашей внутренней библиотеки для обработки данных. Релиз 0. 5. 2 содержал небольшой фикс для обработки дат в ISO формате, что может пойти не так?. . .
Продвинутый ETL на C# из OLTP БД в хранилище
stackOverflow 22.06.2025
Работая в сфере корпоративной аналитики, я постоянно сталкиваюсь с одним и тем же - нужны чистые, структурированные и, главное, свежие данные. Без них современные аналитические системы, машинное. . .
Мастер-класс по микросервисам на Node.js
Reangularity 21.06.2025
Node. js стал одной из самых популярных платформ для микросервисной архитектуры не случайно. Его неблокирующая однопоточная модель и событийно-ориентированный подход делают его идеальным для. . .
Управление Arduino из WPF приложения
Wired 21.06.2025
Зачем вообще связывать Arduino с WPF-приложением? Казалось бы, у Arduino есть собственная среда разработки, своя экосистема, свои способы управления. Однако при создании серьезных проектов. . .
Звёздная пыль
kumehtar 20.06.2025
Я просто это себе представляю: как создавался этот мир. Как энергия слипалась в маленькие частички. Как они собирались в первые звёзды, как во вселенной впервые появился Свет. Как эти звёзды. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru