Интерфейс MS-доступа с базой данных Sybase Sql Anywhere, плюсы и минусы - PullRequest
2 голосов
/ 13 мая 2009

Рассмотрю вопрос о переносе моего простого настольного приложения клиент-сервер ms-access 2003 на одно с интерфейсом ms-access и базой данных Sybase 10 или 11 sql Anywhere. Зачем? потому что я хочу, чтобы: - воспользоваться легким и быстрым способом доступа, который позволяет создавать формы и отчеты (с которыми я уже знаком… это означает, что для меня будет меньше времени на обучение) - воспользоваться надежным и эффективным способом настройки базы данных sybase для синхронизации данных в различных типах сетей с помощью mobilink.

Я не хочу использовать репликацию доступа, потому что данные в конечном итоге вырастут до 2 ГБ в серверной части.

Итак, - Каковы плюсы и минусы этого подхода? - Могу ли я просто связаться с таблицами базы данных Sybase с помощью DSN или строки подключения в VBA и продолжить? - Будут ли какие-то особые соображения при навигации и обновлении / удалении записей через формы ms-access?

спасибо за помощь

Ответы [ 2 ]

1 голос
/ 15 мая 2009

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

В прошлом я работал с внешними интерфейсами Access для серверных приложений MS-SQL Server. В основном это то же самое, что и работа с локальными таблицами доступа, но есть несколько исключений. Я не работал с SQL Anywhere, но у MS_SQL были проблемы с такими вещами, как, например, поля Autonumber (поведение, отличное от Access).

Я также недавно работал над внешним интерфейсом доступа к бэкэнду MS-SQL, где обычные методы подключения доступа не использовались в пользу табличных функций и хранимых процедур ... это был абсолютный кошмар кодировать, и в значительной степени компенсировать все преимущества работы с Access в качестве инструмента Rad. Если бы я делал это снова, я бы вместо этого настаивал на том, чтобы забыть о Access и использовать VB.Net для внешнего интерфейса. Учитывая, насколько хорош MS Report Server в наши дни, причин для использования Access на самом деле очень мало.

0 голосов
/ 14 мая 2009

Да, вы должны иметь возможность использовать таблицы ODBC, связанные с вашей базой данных Sybase, при условии, что Sybase предоставляет совместимые драйверы ODBC. Тем не менее, я бы предложил не использовать DSN, а вместо этого соединение без DSN. Что я делаю, так это определяю DSN на моем компьютере программирования, и после связывания таблиц я запускаю код Дуга Стила для преобразования в строки соединения без DSN .

Приложение в основном должно работать, но есть некоторые вещи, которые могут нуждаться в настройке. Не ожидайте улучшения производительности - более вероятно, что вы потеряете производительность. Затем вы можете изучить части приложения, которые не работают должным образом, и оценить, как заставить их работать лучше с серверной частью. Обычно это включает создание представлений на сервере или написание хранимых процедур (для таких вещей, как вставка или обновление записей) или использование сквозных запросов (чтобы Jet не касался SQL и просто передавал его на сервер для выполнения).

Это может быть сложно, хотя я обнаружил, что это было не так сложно, как я ожидал, когда впервые увеличился.

...