Хотя профессионалы баз данных считают, что лучшее средство взаимодействия с сервером - текстовая консоль, производители СУБД неуклонно идут по пути наращивания графических интерфейсов для своих продуктов. Естественным шагом на этом пути является использование Web-браузера в качестве графического клиента, тем более что "идеология" Web-интерфейса, основанная на заполнении форм, хорошо вписывается в механизм взаимодействия с SQL-сервером.
Не так давно и Microsoft SQL Server обзавелся собственным средством Web-администрирования - Microsoft SQL Web Data Administrator, а совсем недавно была выпущена вторая версия этого продукта. Microsoft SQL Web Data Administrator распространяется бесплатно, загрузить его можно с сайта Microsoft. Microsoft SQL Web Data Administrator 2.0 активно использует архитектуру .NET (системные требования продукта - Windows 2000 SP2 или XP, .NET Framework 1.0). В качестве сервера Web Data Administrator может использовать как Internet Information Services, так и "персональный" Web-сервер Cassini (входит в состав дистрибутива). Для тех, кто не знает, поясним. Cassini - Web-сервер с открытыми исходными текстами, написанный на C#. По умолчанию Cassini принимает только запросы с локального узла. Чтобы устранить это ограничение, нужно внести изменения в исходный текст сервера, удалив фрагмент:
// Limit to local requests only
if (!_conn.IsLocal) {
_conn.WriteErrorAndClose(403);
return;
}
и перекомпилировать сервер.
При запуске Web Data Administrator открывается окно, в котором можно выбрать Web-сервер и порт, по которому будет доступно приложение (рис. 1).
Рисунок 1. Окно запуска Web Data Administrator
После запуска Web Data Administrator вы можете открыть начальную страницу администратора в браузере, указав соответствующий адрес и порт. После прохождения авторизации на начальной странице вы сможете получать доступ собственно к интерфейсу администратора. Следует отметить, что интерфейс этот прост и нагляден, так что пользователю, знакомому с администрированием SQL Server, не придется ломать голову над тем, как выполнить ту или иную задачу (рис. 2).
Рисунок 2. Интерфейс управления базами данных Web Data Administrator
В перечень функций Web Data Administrator входит управление базами данных (создание и удаление баз данных, создание, удаление и редактирование структур таблиц, создание, удаление и редактирование хранимых процедур, импорт и экспорт баз данных с использованием SQL-скриптов), управление учетными записями пользователей и групп (создание, удаление, редактирование). Кроме того, Web Data Administrator включает SQL-клиент с возможностью сохранения текста запросов в файле (этот клиент загружается при переходе по ссылке query в таблице объектов баз данных или на панели команд, расположенной слева). Результаты запроса отображаются на Web-странице SQL-клиента в отформатированном виде (рис. 3).
Рисунок 3. Результат выполнения запроса к таблице
Главное преимущество использования Web Data Administrator заключается в возможности удаленного администрирования Microsoft SQL Server с тех компьютеров, на которых не установлено специальное клиентское программное обеспечение. В принципе с помощью Web-интерфейса сервером баз данных можно управлять и с помощью КПК, и с помощью Linux-системы. Широкие возможности удаленного администрирования поднимают, естественно, вопросы безопасности, но удобство и безопасность всегда были противоречивыми критериями.
В заключение немного программирования. Выше уже упоминалось, что Web Data Administrator основан на технологии .NET. В состав пакета входят две сборки .NET (.NET Assemblies) - SqlAdmin.dll и SqlWebAdmin.dll. Больший интерес представляет сборка SqlAdmin.dll, содержащая ряд классов для доступа к северу БД. Ниже приводится фрагмент программы, написанной в Delphi 8.
uses
..., SQLAdmin;
...
procedure TWinForm.Button1_Click(sender: System.Object; e: System.EventArgs);
var
Server : SQLServer;
begin
Server := SQLServer.Create('Second');
Server.Username:='user1';
Server.Password := 'mushka';
Server.Connect;
if Server.IsUserValid then
begin
RichTextBox1.Clear;
RichTextBox1.AppendText(
Server.Databases.Item['Northwind'].Script(SqlScriptType.Create));
end;
Server.Disconnect;
end;
...
Эта программа использует класс SQLServer, представляющий сервер баз данных. Программа регистрируется на сервере, указывая имя сервера ("Second"), учетную запись пользователя и пароль, а затем выводит SQL-скрипт, необходимый для генерации базы данных Northwind в поле компонента RichTextBox1. Работающее приложение показано на рис. 4.
Рисунок 4. Пример клиентского приложения .NET для Microsoft SQL Server
Автор: Андрей БоровскийУважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо зайти на сайт под своим именем.