2009-11-26 1 views
2

Я 10 лет пользователь FirebirdSQL, и теперь у меня есть клиент, желающий использовать MSSQL 2008. Я не хочу начинать пламенные войны с этим, я просто хочу, чтобы ваши советы по технологии доступа к данным ,Множественный доступ к базе данных с Delphi

Im using Delphi MMVI.

Использовать собственный ADO или DBExpress? Использовать третью часть?

Любые другие слова мудрости?

Спасибо,

да я знаю, что мне придется переписать процедуры, триггеры. Я надеюсь, что это стоит ...

+0

Delphi MMVI = Delphi 2006? – mjn

+0

yeap. мои два цента за улыбку ... –

ответ

7

Для компонентов базы данных, я никогда не видел быстрее и стабильных компонентов, чем компоненты пришли из DevArt (CoreLab)

Они имеют UniDac универсальный компонент прямого доступа, которые поддерживают (Oracle, SQL Server, MySQL, InterBase/Firebird , PostgreSql и ODBC (который предлагает DB2, Sybase MS Access и любой другой ODBC)

+1

+1 для этого от меня - спас меня, набрав много то же самое. DevArt (ранее CoreLabs) продает отличный драйвер DBXpress. Он работает с SQL Server 2008 (и 2005!). – robsoft

+0

То же. Мы используем SDAC - их специфический материал SQL-sevrer, а не UniDAC или dbExpress, но я думаю, что он основан на тех же принципах, и он отлично работает. – shunty

1

Я бы порекомендовал DBExpress.

1

У нас был очень хороший опыт работы с DBExpress для SQL и DOA для oracle. Если вы работаете с oracle, DOA - это путь (быстрее, чем BDE и ADO).

2

Я написал программу с использованием преимущества сервера базы данных и очень легко переключил ее на MSSQL с помощью компонентов ado. вы можете использовать файл udl для указания соединения odbc для переключения между двумя разными типами баз данных относительно легко таким образом. Пока вы используете простые подключения к базе данных, например. простых операторов sql или таблиц, у вас не должно быть слишком много проблем переключения. Это может быть сложнее, если вы регулярно используете процедуры и триггеры. Однако у меня нет опыта dbexpress, поэтому не уверен, как он сравнивается.

7

Хотя я использую компоненту SQLDirect ежедневно, AnyDAC кажется, популярное и хорошо развитым решение: http://www.da-soft.com/anydac/

+0

+1 для AnyDAC. Отличные компоненты и отличная поддержка. – oodesigner

1

Что вам нужно, чтобы гарантировать, что в зависимости от того решения вы идете с, то есть драйвера для баз данных, которые вы хотите и для баз данных, которые, возможно, вам понадобятся в будущем.

До недавнего времени мы использовали ODBCExpress, что сделало очень хорошую работу по переносу ODBC в компоненты Delphi TDataSet, и, конечно, каждая база данных имеет драйвер ODBC. К сожалению, этот продукт больше не поддерживается в Unicode от Delphi 2009, поэтому для Delphi 2006 это будет хорошо, но если вы перейдете к более поздней версии Delphi в какой-то момент. Сказав, что я пытаюсь перевести его на D2009 с помощью своего оригинального разработчика.

ADO был бы очевидным выбором, поскольку большинство баз данных также имеют драйвер ADO, и в наши дни это часть Delphi через компоненты dbGo. Но похоже, что dbExpress популярен и хорошо принят, и, поскольку есть dirvers для полной поддержки ваших баз данных по выбору, это, по-видимому, самый популярный выбор.

1

Для меня ADO делает лучший выбор для MS SQL. Он был разработан Microsoft и очень стабилен. но я обнаружил, что мои проекты, созданные с помощью ADO, не требуют многого (если они есть) изменений для поддержки различных версий MSSQL Server. ADO также поддерживает драйверы ODBC, поэтому можно также получить доступ к устаревшим базам данных.Можно даже взять файл с разделителями-запятыми и запросить его, как если бы это была таблица с использованием ADO (хотя производительность ужасна, так как каждый запрос становится полным сканированием таблицы).