Хоторн Р. Разработка баз данных Microsoft SQL Server 2000 на примерах. Пер. с англ. М.: Вильямс, 2001. 464 с.

Сервер баз данных корпорации Microsoft - SQL Server - появился в 1987 г. и прошел эволюционный путь от прикладной системы для OS/2 до мощного, надежного и коммерчески успешного программного продукта, тесно интегрированного с ОС Windows и обладающего развитыми средствами коллективной работы с громадными объемами данных. Его последняя версия - SQL Server 2000, - вобрав в себя множество новейших технологий управления БД, оптимальным образом использует возможности ОС Windows 2000 и делает рывок в области интеграции баз данных в Web.

Книга Р. Хоторна прежде всего рассчитана на программистов - разработчиков баз данных, а также на Web-дизайнеров, создающих динамические приложения, взаимодействующие с БД. Ее автор - новозеландский программист, сертифицированный разработчик Microsoft - обладает богатым опытом создания бизнес-приложений, осуществляющих доступ к базе данных MS SQL Server 7.0/2000, и делится им с читателями в стиле “благодарного учителя”. Книга, безусловно, будет полезна и новичкам в создании промышленных баз данных, поможет им развить навыки разработчика и администратора БД на конкретном проекте.

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

Первая из них максимально заполнена практическими упражнениями и посвящена моделированию БД, созданию “скелета” из основных объектов - таблиц, представлений, хранимых процедур, триггеров, пользовательских функций, а также вводу информации. Параллельно с созданием и заполнением базы набирается “багаж программиста”: изучаются основные операторы Transact-SQL, базовые управляющие операторы и некоторые встроенные функции SQL Server 2000. Занявшись общим описанием типов и принципов работы функций, автор, кажется, даже переборщил в благом намерении расширить теоретические познания читателей. Читатель-программист предпочел бы вместо этого иметь полный список функций, входящих в поставку SQL Server 2000.

Существенное внимание уделено методам защиты своего детища от “неразумных” пользователей. Начав с простых средств, оберегающих приложение от ввода некорректных данных, автор завершает тему ключевыми концепциями использования СУРБД в многопользовательском режиме - стратегией транзакций и блокировок и механизмом обработки ошибок. Но чисто описательный раздел восьмой главы, посвященный блокировкам, думаю, многим покажется бесполезным. Ведь такой отход от идеи обучения на примерах после предупреждения автора о том, что в создаваемом проекте стратегии блокировок не будет вовсе, выглядит неуместно.

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

Вторая часть книги (9-11 главы), гораздо более серьезная и насыщенная, посвящена администрированию БД. Первыми в ней рассматриваются вопросы сохранности разрабатываемого приложения: упорядочение доступа к БД путем создания записей пользователей и назначения им необходимых прав, поддержание работоспособности БД в соответствии с составленным планом полной поддержки, объединяющим воедино проверки целостности, резервное копирование и обновление статистики. Жаль только, что демонстрируется совсем элементарный план, по которому не восстановить информацию на любой момент времени. Кроме того, описывается общее администрирование, направленное на повышение эффективности работы сервера и скорости выполнения приложений.

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

И, наконец, в третью часть книги входит всего одна глава - 12-я. Она посвящена созданию Web-интерфейса пользователя для приложения. Ее текст наполовину состоит из непонятного новичкам в написании динамических HTML-страниц программного кода ASP-сценариев. И такого подробного анализа листингов, как в предыдущих главах, в этой главе нет. Но, как ни парадоксально, именно для начинающего разработчика 12-я глава особенно полезна, поскольку иллюстрирует один из возможных путей обращения клиента к БД. Новичок узнает, как организовать Web-узел, код какого языка программирования нужно изучить, чтобы написать для него сценарии. А опытный программист познакомится с новым методом соединения с базой данных, рекомендуемым Microsoft вместо ODBC.

13, 14 и 15 главы посвящены изучению импорта данных из различных источников в SQL Server, описанию инструментов, помогающих при отладке готового приложения, советам по использованию справочных материалов Books Online и перечислению новшеств последней версии SQL Server.

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

Версия для печати