Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

драйвера доступа к базе данных [D6, MSSQL, sybase]


Страницы:   1 2

bpv ©   (2003-03-05 10:39:00) 

уважаемые господа мастера хотелось бы обсудить с вами вопрос доступа к БД

есть база sybase для доступа к ней по исторической традиции используется БДЕ, но со времени написания данной программы технологии шагнули вперед появились новые технологии и компоненты доступа:
- прямого для сайбейза,
- адо,
- dbExpress
- SQLDirect
- другие

так вот хотелось бы увеличить быстродействие системы поэтому АДО скорее всего отпадает а вот остальные технологии хотелось бы обсудить, кроме того что возможно нам предется перейти к MSSQL - 2000


bpv   (2003-03-07 13:46:00) [1]

ладно закрываем те


Alex Chu   (2003-03-07 09:51:00) [2]

ct-lib
www.geocities.com/ctlibcomps

бесплатность на уровне dcu, а исходники за 300

что ещё может быть нужно sybase?


bpv   (2003-03-07 09:35:00) [3]

2 BlackTiger да я обобо не мучаюсь мне просто интересно


BlackTiger   (2003-03-06 20:00:00) [4]

bpv! Да не мучайся ты так, сколько людей - столько мнений.

Однозначного ответа тебе никто не даст.

Погоняй несколько вариантов и остановись на том, который тебе больше подходит/понравился. Мне лично нравится АДО, кому-то другому - что-то другое. АДО более стандартизован и надежен, чем различные сторонние разработки, но это не говорит о том, что сторонние разработки плохи.

Тут вопрос не в быстродействии. Все работает одинаково хорошо, если к нему приложить некоторые усилия. Передача данных между клиентом и сервером все равно не будет быстрее, чем канал связи между ними, а обработка данных сервером никак не зависит от клиента (чем и хороши клиент-серверные базы). Лучше в сервер напихать железо покруче - ему же обрабатывать запросы, а не клиенту, клиент только принимает ввод пользователя, отправляет запрос серверу и получает от него ответ (за редким исключением).

А про BDE лучше начать забывать уже сейчас. Просто потому, что бормановцы обещают его просто выкинуть из новых версий, оставив только ADO и dbExpress, для которого есть драйвер к Sybase. Но мне лично dbExpress не нравится (как и провайдеры .NET) из-за своей архитектуры. Но если не оставят выбора, буду работать и с dbExpress/.NET.


bpv   (2003-03-06 17:09:00) [5]

2 kkot
я посмотрел этот набор для Anywhere а у нас ентерпрайз


kkot   (2003-03-06 16:49:00) [6]

P.S. Если у кого-то есть кряк к NativeDB, может поделитесь?


kkot   (2003-03-06 16:46:00) [7]

2 bpv

Касаемо прямого доступа. Есть несколько нормальных компонент для доступа к SYBASE. Лично я использую NativeDB. Единственно, что слегка портит жизнь - то, что они все платные. Но NativeDB проявляет свою "триальность" только тем, что перед созданием форм выводит свое окошко и просит нажать "ОК". Это можно задавить в WinIce но это не дело каждый свой проект ковырять, поэтому наша контора тяготеет к покупке легальным путем. Скачать их можно на www.nativedb.com Есть еще ASADAC, говорят, что тоже очень неплохие, но лично не пробовал, ничего сказать не могу.


bpv   (2003-03-06 14:50:00) [8]

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


BlackTiger   (2003-03-06 12:39:00) [9]

>sniknik

Я просто в порядке очепятался :).
Там была ерунда в том, что открыть ВСЮ таблицу, потом пройтись Next"ом по записям и обработать только нужные, получалось на порядок быстрее, чем сделать выборку по критерию и работать уже результатом запроса.


BlackTiger   (2003-03-06 12:33:00) [10]

>bpv
Вопросом на попрос (10 лет в еврейской фирме :) )
А почему Borland пытается от него избавиться?


bpv   (2003-03-06 11:38:00) [11]

to Wellslava
почему не подходит бде подднрживает все популярные субд


Wellslava   (2003-03-06 10:34:00) [12]

из собственного опыта - через ODBC быстрее и лучше, а если надо использовать несколько баз, то BDE вообще не подходит...


Владислав   (2003-03-06 10:31:00) [13]

> bpv (06.03.03 10:20)
Про это ничего не могу сказать:
- dbExpress
- SQLDirect
Я ODBC использую.


bpv   (2003-03-06 10:20:00) [14]

что никто не интересовался скоростью работы
я понимаю что самую быструю технологию можно испортить кривыми ручками но всеже


bpv   (2003-03-05 15:47:00) [15]

кроме того при обсуждении скорости технологии доступа к БД
следует считать что квалификация разработчика высокая :-)


sniknik   (2003-03-05 15:30:00) [16]

BlackTiger (05.03.03 15:10)
давай пожму твою мужественную руку. :-))) согласен на 100% (особенно с последней фразой)

сколько раз сам встречался с подходом простой замены компонент TTable на TADOTable, не понимая принципов не деля базы на локальные и серверные, не понимая смысла SQL, просто заменят, и в итоге наивной удивленностью а чего оно тормозит?.

BlackTiger (05.03.03 15:22)
но если в запросе пишешь
SELECT * FROM Table ORDER BY Field1 WHERE <что-то>"
возможно это правильное поведение, если ты не ошибся в написании
сначала идет условие, после сортируются выбранные, у тебя наоборот
SELECT * FROM Table WHERE <что-то> ORDER BY Field1
получается логично


bpv   (2003-03-05 15:30:00) [17]

2 BlackTiger мы сейчас не говорим о нестандартных и т.п. базах
я думаю как для сайбазе так и мсскуеля драйвера нормальные
а для доступа ты использовал дельфовые компоненнты или API?


Владислав   (2003-03-05 15:28:00) [18]

> BlackTiger (05.03.03 14:20)
> BlackTiger (05.03.03 15:10)

Что быстрее?
SQLDO -> ODBC -> MSSQL Server
или
ODBC -> MSSQL Server
Как думаешь?


BlackTiger   (2003-03-05 15:22:00) [19]

Хотя вот вспомнил!

Общался как-то с одними драйверами для не стандартной базы. Я бы оторвал руки им, этим разработчикам. Эти дурики пошли "в лоб". Данные просто быбирались ДВАЖДЫ! Один раз из базы во временную таблицу, потом уже из этой таблицы - в рекордсет. СИНХРОННО! С визуализацией процесса ! :))) ("Retreiving record 3 of 5896585 into temporary table").

В другом драйвере наблюдается просто странный косяк при выборке данных (хотя запись/удаление - на ура). При простом переборе Next-ом все отлично, но если в запросе пишешь "SELECT * FROM Table ORDER BY Field1 WHERE <что-то>" - всё, просто все встает колом. Методом проб вычислил, что эта зараза просто ждет последнюю запись ВСЕЙ таблицы, игнорируя WHERE.

Ну и при чем тут АДО?


BlackTiger   (2003-03-05 15:10:00) [20]

и в большинстве случаев (возможно исключая MSSQL and Access) работает медленнее хотя я сам не проверял

Вот-вот, все так - "но я сам не проверял". Многое еще зависит от разработчиков, от самой базы данных, от способа доступа (физически) к базе (локальная база, локалка, интернет, ФайлСервер/КлиентСервер/Трехзвенка). Реальных тестов "быстроты" не существует, все зависит от конкретных реализации и подхода.

Опять же, медленнее, чем что? Чем ODBC16/32? Никто не спорит.
Медленне, чем SQLDMO (для SQL2000)? Вопрос очень спорный. Навесь все навороты АДО на эту бедную библиотеку - результат будет работать еще медленнее, чем что либо.

Я для MSAccess97 делал базы, которые летали на больших объемах данных. С другой стороны видел базы, который тормозили самым дичайшим образом уже на мизерных объемах.

При всем при этом, при использовании "Клиент-Сервер" тормозит, как правило железо (сервер, канал связи), а не клиент - клиент-то "тонкий".

Так что не надо "наезжать" на АДО! Если встретилось несколько "тормознутых" приложений, то скорее по голове постучать надо разработчикам, а не валить все камни на АДО.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо