Смекни!
smekni.com

SQL Server и Разработка приложений и программные решения (стр. 3 из 3)

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

· В Access не существует понятия устройства базы данных, как в SQL Server. Грубым подобием устройства базы данных SQL Server может служить устройство жесткого диска, на котором создана база данных. Базы данных в Access – это отдельные файлы, обычно имеющие расширение .MDB.

· В Access виды называются запросами. Так же, как и в SQL Server вы можете создать обновляемые запросы, выбирать строки с помощью запросов и создавать многотабличные объединения, на базе которых строить комбинирующие запросы.

· В SQL Server индивидуальный столбец представляет определенный элемент данных внутри строки. В Access строками называют наборы элементов данных, а столбцы называют полями.

· Типы данных в Access и SQL Server во многих случаях имеют различное название и различные характеристики.

Существуют и другие различия, но приведенные выше являются основными. Их знание помогут при использовании SQL Server и Access.Если приложение работает в Access, оно представлено шестью различными элементами. Для того, чтобы получить понятие о различных компонентах Access и принять решение об их переносе в систему SQL Server, рассмотрим следующую таблицу:

Элемент Описание и применение
Таблицы То же, что и в SQL Server. Это возможно наиболее важный элемент, который будет перенесен. Таблицы содержат строки информации, которую вы хотите конвертировать в SQL Server.
Запросы Запросы должны быть перенесены и конвертированы, но это будет в основном задача, выполняемая вручную. Это значит, что необходимо просмотреть код, лежащий в основе каждого запроса и создать в SQL Server соответствующий вид.
Формы Формы не конвертируются в SQL Server. В модели клиент/сервер приложение клиента отвечает за управление интерфейсом пользователя. Сервер отвечает за управление обработкой данных.
Отчеты Так же, как и формы, отчеты не будут конвертироваться в SQL Server. Исключение составляет отчет, основанный на запросе. Access позволяет в отчет включать запрос. Для получения наилучших результатов следует пересмотреть свойства отчета, конвертировать встроенный запрос и сформировать из него вид в SQL Server. Затем в запросе обращаться к новому виду. Производительность увеличится, а отчет будет работать так же. как он работал со встроенным запросом. Но в результате вы получите реализацию отчета в системе клиент/сервер.
Макросы Макросы – это элемент жестко связанный с Access.Макросы могут вызывать запросы и выполнять некоторые высокоуровневые команды, которые должны быть пересмотрены. Так же, как и в ситуации с запросами, которые могут быть перемещены в SQL Server для увеличения производительности.
Модули Решение о переносе модулей редко принимается автоматически. Это значит, что каждая процедура и подпрограмма переносится отдельно, после тщательной оценки необходимости этого шага. При переносе модулей вы располагаете несколькими вариантами. Подпрограмму можно конвертировать в хранимую процедуру, вид или динамический запрос. Это полностью зависит от той обработки, которая производится в базе данных. Помните о необходимости внесения изменений в короткие пакеты команд и продолжении тестирования. Перед переходом к следующему этапу конвертирования очень важно тщательно протестировать те функции системы, с которыми вы начали работать.

Создание приложений клиент/сервер с помощью Microsoft Access

Microsoft Access не является системой клиент/сервер. Его приложения не содержат ярко выраженных компонентов клиента и сервера. Однако Access может быть использован в качестве инструмента разработки, предоставляя средство формирования интерфейса пользователя. Этот инструмент содержит такие мощные средства, как генератор отчетов, построитель запросов и так далее. Подобные инструменты очень полезны при разработке систем.

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

Таблицы базы данных Access могут быть конвертированы и перенесены на SQL Server. Таблицы, запросы и виды – это объекты, которыми лучше всего управляет SQL Server. После создания доступных в Access объектов, они могут быть легко конвертированы в SQL Server.

Access становится инструментом разработки, предоставляющим средство формирования интерфейса пользователя и позволяющим работать с базами данных SQL Server.

Создание транзитных запросов

Запросы, созданные в Access и затем выполняемые на SQL Server, сначала проходят уровень соединения ODBC, а затем передаются SQL Server в виде временных хранимых процедур. Результаты выполнения возвращаются приложению и с ними уже можно работать.

Что случится, если вы захотите получить больше средств контроля над выходными данными? Что, если вы захотите вызывать хранимые процедуры и непосредственно работать с результатами? Подобные операции выполняются с помощью транзитных запросов (pass-through queries). Применяя Access, можно создать транзитные запросы, которые минуют трансляцию и прямо передаются в SQL Server. Для того, чтобы установить запрос как транзитный, сначала выделите его и выберите мышью Design. Затем из появившихся меню выберите Query, SQL Specific и наконец Pass-through. После этого появится окно, содержащее инструкцию SQL.

Транзитные запросы позволяют вызывать хранимые процедуры, обращаться к видам и применять другие средства SQL Server, которые могут быть недоступны при выполнении обычного запроса Access. Для выполнения хранимой процедуры, например, можно просто использовать команду EXECUTE.

Например, для вызова хранимой процедуры AccessProc из транзитного запроса, можно использовать следующую инструкцию:

exec accessproc

В результате хранимая процедура будет выполнена и результаты будут возвращены из запроса. Такой тип логики очень легко включается в приложение с помощью создания необходимых запросов или с помощью формирования запросов посредством Access Basic

Практическое тестирование

СУБД Access – это мощный инструмент. Он предоставляет возможность разработчикам корпоративных систем создавать надежные приложения баз данных, которые могут быть легко установлены в рабочую среду. Подобные приложения могут включать систему безопасности, иметь высокую производительность и дружественный пользователю интерфейс. С помощью Access процесс знакомства пользователя с приложением становится естественным и не вызывает затруднений.

После выполнения переноса баз данных Access в SQL Server, хорошее приложение становится еще лучше. Увеличивается производительность, улучшается система безопасности и доступность информации вашего приложения в масштабе корпорации.

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

· Производительность в системах с мощной индексацией и большим количеством вводимой информации. При переходе к SQL Server этот вопрос обязательно должен быть пересмотрен, так как система SQL Server предоставляет значительно большие возможности по оптимизации системы. Вы можете применить лучшие индексы и другие процессы стороны сервера, позволяющие увеличить производительность SQL Server. Подобные опции недоступны на том же уровне Access. Вы можете добавить индексы в Access, но это приведет к совершенно другим результатам.

· Тонкая настойка запросов, видов и хранимых процедур. Проведя масштабную работу по оптимизации хранимых процедур и других объектов, перенесенных из Access, можно значительно увеличить производительность системы по сравнению с тем, как система работала сразу после конвертирования. После завершения конвертирования и тестирования, просмотрите код хранимых процедур и видов. Убедитесь. что он предусматривает максимально широкое применение возможностей, предоставляемых SQL Server, служащих для повышения производительности и эффективности работы.

· Безопасность. Не забывайте, что при переносе приложения, вы должны управлять системой безопасности SQL Server.

После завершения конвертирования приложения необходимо пересмотреть ряд его элементов, касающихся стиля разработки. Лучше всего составить список этих элементов и проверять их в каждом случае перехода на SQL Server.