Подключение SQL Server к сети



Мы поможем в написании ваших работ!


Мы поможем в написании ваших работ!



Мы поможем в написании ваших работ!


ЗНАЕТЕ ЛИ ВЫ?

Подключение SQL Server к сети



Когда программа SQL Server устанавливается впервые, она может использоваться только на текущем компьютере, т. е. другие компьютеры не могут зарегистрироваться на сервере и начать использовать любые его БД.

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

Для того чтобы открыть SQL Server для внешнего мира, необходимо изменить два кон­фигурационных параметра. Если вы работаете под управлением ОС Windows XP или Vista, также нужно настроить брандмауэр Windows, чтобы он пропускал SQL Server. Самые све­жие инструкции по установке можно найти в статье из Базы знаний (Knowledge Base) на Web-странице http://support.microsoft.com/kb/914277.

После внесения этих изменений другие пользователи, наконец, смогут связаться с про­граммой SQL Server и попробовать зарегистрироваться. Однако дело еще не сделано. SQL Server все еще может отказать пользователям, т. к. программа не предоставляет доступа тем, кому не доверяет.

Кому же доверяет SQL Server Express? Далее приведена вся подноготная.

■ Когда программа SQL Server устанавливается впервые, она настроена на доверие администратору компьютера, на котором проходила установка. (Технически быть администратором означает, что ваша учетная запись Windows принадлежит группе Администраторы(Administrators).)

■ Если вы при установке выбрали аутентификацию в режиме Mixed mode...(Смешанный режим...), доступ будет разрешен тому, кто предоставит имя пользователя и пароль sa, заданные во время установки.

Если вы хотите, чтобы программа SQL Server доверяла другим пользователям, придется выполнить кое-что еще. Обычно вы должны гарантировать, что каждый пользователь, нуждающийся в работе программы SQL Server, принадлежит одной из Windows-групп (группа — это коллекция пользователей, имеющая осмысленное название, например, Гости(Guests),


Администраторы (Administrators) ЛюбителиБД (DatabaseLovers) и т. д.). Создание груп­пы — это задача установки ОС Windows, поэтому для ее выполнения необходимо прокон­сультироваться с сетевым администратором. После того как дело сделано, нужно сообщить программе SQL Server о необходимости доверять вашей группе. Для этого можно приме­нять несколько методов, но легче всего загрузить из Интернета бесплатное программное средство SQL Server Management Studio (см. рис. 20.2). Дополнительные сведения можно найти в справке SQL Server Management Studio Help (рассчитанной на технически грамот­ных пользователей) или поискать книгу, посвященную администрированию в программе SQL Server.

 

 

Примечание

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

 

 

Создание БД SQL Server

Вы прошли сквозь долгий и изнурительный процесс установки. Сейчас пора пожинать пло­ды вашего труда и приступить к созданию вашей первой БД SQL Server.

Программа Access предоставляет два способа создания БД SQL Server:

■ можно взять обычную БД Access и преобразовать ее. Программа создает нужные вам таблицы и передает все данные в программу SQL Server;

■ можно использовать программу Access для создания с нуля новой БД SQL Server.

Как правило, преобразование — самый легкий вариант, поскольку разрешает разработать таблицы с помощью хорошо знакомых вам средств, а затем передать данные. (Как вы увиди­те, создание в программе Access таблицы SQL Server аналогично, но чуть отличается от про­цесса создания обычной таблицы Access. Это похоже на чувство, которое возникает, когда вы проснулись утром и обнаружили, что кто-то перевернул вашу коллекцию CD-дисков в ящике для белья. Ничего не пропало, но все не там, где вы привыкли находить.)

У метода прямого создания тоже есть свои достоинства. Важнее всего то, что он предос­тавляет больший контроль, поскольку лишен этапа преобразования. БД Access неточно со­ответствуют БД SQL Server (например, используемые типы данных похожи, но слегка от­личаются). Если создавать БД с самого начала в программе SQL Server, вы избежите любых потенциальных проблем преобразования.

В следующих разделах вы познакомитесь с обоими подходами.

 

 

Преобразование БД

У программы Access есть удобный Мастер преобразования в формат SQL Server (Upsizing wizard), который превращает любую БД Access в БД SQL Server. Этот мастер аналогичен мастеру разделения БД — когда вы закончите, у вас будет серверная и клиентская части БД. Клиентская часть — файл Access, содержащий ваши формы, отчеты, макросы и программный


 
 

код. Серверная часть — это данные (и обычно запросы), которые хранятся в надежных руках программы SQL Server.

Вот как взять в оборот Мастер преобразования.

1. Откройте БД, которую хотите преобразовать.

Выберите на ленте Database Tools → Move Data → SQL Server(Работа с базами данных Переместить данные SQL-Server)1.

2. На экране появится первое окно Мастера преобразования (рис. 20.5).

 

Рис. 20.5.Обычно мастер преобразования применяется для переноса данных из файла БД Access в замечательную новую БД SQL Server

 

 

3. Выберите переключатель Create new database(создать базу данных) и затем нажмите кнопку Next(Далее).

Если вы уже создали БД SQL Server на компьютере с программой SQL Server (например, с помощью другого средства управления БД), можно было бы выбрать пере­ключатель Use existing database(использовать существующую базу данных) для пере­носа ваших таблиц Access в эту БД. Но почти всегда имеет смысл создавать новую БД. Помимо всего прочего процессор БД, такой как SQL Server, может хранить практически неограниченное число БД.

4. На следующем этапе (рис. 20.6) необходимо сообщить программе Access, где искать сервер вашей БД. Сначала введите в поле в верхней части окна имя сервера.

Имя сервера состоит из имени компьютера, на котором запущена программа SQL Server, за которым следует обратный слэш, а затем слово SQLEXPRESS. Если компьютер, вы­полняющий программу SQL Server, назван FudgeServer, вы найдете свою БД на FudgeServer\SQLEXPRESS. Если вы подключаетесь к полной версии программы SQL Server

1 В данной главе рассматривается нерусифицированная версия программы Access. — Ред.


 

(не к версии Express), вторая часть имени, как правило, не нужна, достаточно Fudge-Server. Обратитесь за помощью к вашему администратору БД.

 

 
 

Рис. 20.6. В этом окне программа Access собирается подключиться к компьютеру, названному MYSERVER, на котором выполняется программа SQL Server Express

 

Примечание

Для выяснения имени вашего компьютера, найдите пиктограмму Мой компьютер(My Computer) (на вашем рабочем столе или в программе Проводник (Windows Explorer)), щелкните ее правой кнопкой мыши и выберите строку Свойства (Properties). Далее перейдите на вкладку Имя компьютера(Computer Name). Вы увидите имя вашего компьютера и полезную кнопку Изменить...(Change), которой можно воспользоваться для изменения этого имени.

 

 

5. Оставьте установленным флажок Use Trusted Connection(Доверительное соединение).

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

6. Введите имя вашей БД и щелкните мышью кнопку Next(Далее).

Пользуйтесь теми же правилами, которым вы следовали при именовании объектов БД - имена должны быть короткими, без пробелов и знаков пунктуации.

 

 

Примечание

Когда создается БД, программа SQL Server не сообщает вам имя реального файла БД (как пра­вило, это несколько файлов). Имена файлов не так важны. Вам следует знать имя, которым вы наградили вашу БД (например, BoutiqueFudge). За кадром программа SQL Server хранит ваши данные в соответствующих файлах, поэтому вам беспокоиться об их именах, не стоит.


 
 

7. Выберите таблицы, которые хотите перенести в вашу БД (рис. 20.7), и щелкните мышью кнопку Next(Далее).

Программа Access не разрешит выбрать запросы, которые вы хотите перенести в БД. Вместо этого она перенесет все запросы, связанные с выбранными вами таблицами. Дру­гие объекты, такие как формы и отчеты, никогда не переносятся.

 

Рис. 20.7. Щелкните мышью кнопку > для переноса одной таблицы в список Export to SQL Serverили кнопку » для переноса всех таблиц

8. Следующие этапы позволят управлять способом создания ваших таблиц в программе SQL Server (рис. 20.8). Измените нужные параметры и щелкните мышью кнопку Next(Далее).

В главе 2 вы узнали об индексах, а в главе 4 познакомились со значениями по умолчанию и условиями на значения. Обычно, если вы потратили время на определение этих со­ставляющих БД в программе Access, вам захочется сохранить их и в экспортируемых в SQL Server таблицах, поэтому оставьте соответствующие флажки установленными. Да­лее перечислены остальные параметры, которые можно использовать.

□ Флажок Table relationships(связи таблиц). Оставьте его установленным, что гаран­тирует сохранение в программе SQL Server связей между таблицами, которые вы оп­ределили. В этом случае у вас есть два варианта для выбора. Переключатель Use DRI(DRI), где DRI — сокращение для data relational integrity (ссылочная целостность данных), — обычная практика, обеспечивающая невозможность создания подчинен­ных или дочерних записей, ссылающихся на несуществующую главную или роди­тельскую запись. Переключатель Use triggers(Триггеры) заставляет программу SQL Server применять менее распространенные средства каскадного удаления и каскадно­го обновления записей.


 
 

□ Раскрывающийся список Add timestamp fields to tables?(Добавлять поля штампа времени в таблицы?) позволяет создавать поле с текущими датой и временем — до­полнительное поле, основная цель которого фиксировать момент времени внесения изменения. Данное поле иногда применяется для запрета накладывающихся измене­ний, т. к. оно позволяет проверить, не сделал ли кто-то еще изменений в записи с тех пор, как вы последний раз ее просматривали. Обычно поля с датой и временем не до­бавляются. Лучше вставить их в таблицу позже, когда вы решите, что хотите восполь­зоваться этой возможностью.

 

Рис. 20.8.Если вас пугают все параметры в этом окне, просто щелкните мышью кнопку Next,чтобы оставить все, как есть. Стандартные установки — как правило, то, что вам нужно

§ Флажок Only create the table structure...(создать только структуру таблицы...). С помощью этого параметра можно создать все таблицы в программе SQL Server, но не переносить данные. Этот вариант удобен, если в данный момент файл БД Access тестируется и в нем много не реальных, а тестовых данных.

9. На последнем этапе решается, как поступить с исходным файлом Access. Обычно выбирается вариант Create a new Access client/server application(Создать новое приложение Access).

Далее описывается назначение каждого из трех возможных вариантов.

§ Вариант Create a new Access client/server application(создать новое приложение Access). Если выбран этот вариант, создается файл Access специального типа, назы­ваемый проектом Access. Вы заметите разницу, т. к. у этого файла расширение adp. Данный файл — клиентская БД, содержащая все ваши отчеты, формы, программный код и специальный набор ссылок, позволяющих взаимодействовать с таблицами, находящимися на сервере. (Исходный файл БД Access остается, но вы, наверное, просто удалите его, потому что все ваши данные есть в программе SQL Server.)


§ Вариант Link SQL Server tables to existing application(связать таблицы SQL Server с существующим приложением). Этот вариант аналогичен созданию проекта Access за исключением того, что он модифицирует файл текущей БД, превращая его в клиентскую БД. Все таблицы, которые только что были перенесены, переименовываются добавлением в конец имени слова "local" (локальная) (таким образом, таблица Productsстановится таблицей Products_iocal).Кроме того, вы получите новый набор связанных таблиц с исходными именами. Каждая связанная таблица позволяет обращаться к соответствующей таблице в программе SQL Server. После того, как
убедитесь, что связи таблиц действуют, вероятно, стоит удалить локальные таблицы, чтобы не путаться. (Дополнительную информацию о связанных таблицах см. в примечании "На профессиональном уровне. Проекты Access no сравнению со связанными таблицами" далее в этом разделе.)

§ Вариант No application changes(не изменять приложение). При выборе этого варианта данные переносятся, но ваша БД Access не изменяется. Это означает наличие двух наборов данных: один набор в файле БД Access и другой в файле SQL Server (который можно просматривать и корректировать в программе Access). Такой результат обычно не то, что вам нужно.

10. Щелкните мышью кнопку Next (Далее).

Если создается проект Access (как описано в предыдущем пункте), программа Access запрашивает, хотите ли вы открыть новый проект клиентской БД прямо сейчас или со­хранить открытой старую БД. Обычно появляется желание открыть новый файл, чтобы можно было в нем работать.

11. Щелкните мышью кнопку Finish(Готово) для того, чтобы начать процесс преобразования.


Программа Access подключается к SQL Server и начинает переносить все данные. Во время ее работы вы видите индикатор выполнения процесса (рис. 20.9).

Когда Access закончит, программа выведет на экран отчет со сводными данными о за­вершенном процессе. Отчет можно напечатать или выбрать на ленте Print Preview → Close Preview → Close Print Preview(Предварительный просмотр Закрыть Закрыть окно предварительного просмотра) для возврата к вашей БД.

 

Рис. 20.9. Процесс может занять какое-то время, зависящее от количества данных

Процесс преобразования обычно выполняется без проблем. Но не все данные переживут преобразование. Далее перечислены ингредиенты, которые могут быть потеряны.

Поля гиперссылок. Они превращаются в обычные текстовые поля.


Поля типа Вложение. Они становятся обычными текстовыми, полями, но в этих полях содержатся только имена файлов, которые вы поместили в БД как вложения.

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

Если создается проект Access (а не просто связанные таблицы), ваши запросы тоже пре­образуются. В результате потеряются следующие составляющие, поскольку программа SQL Server их не поддерживает:

■ запросы на изменение (см. главу 8) с параметрами;

■ перекрестные запросы;

■ запросы, ссылающиеся на значения, хранящиеся в форме. (Форма находится в вашей клиентской БД, поэтому после переноса запроса у него не будет доступа к данной информации.);

■ нестандартные запросы, которые были созданы в режиме SQL-команды, а не в Конструкторе, например запросы на объединение.

 

 

На профессиональном уровне.

Проекты Access по сравнению со связанными таблицами

Проекты Ассеss и связанные таблицы выглядят как два похожих варианта. Они позво­ляют создавать клиентские БД Access, работающие с данными, хранящимися в БД SQL Server. Но у этих вариантов есть несколько важных различий.

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

Обработка запросов. Когда создается проект Access, ваши запросы преобразуются в объекты SQL Server и хранятся на сервере. Когда создается связанная таблица, запросы остаются в клиентской БД. Трудно сказать, какой подход лучше. Обычно у проектов Access более высокая производительность обработки запроса, поскольку большую часть работы выполняет сервер. (Это особенно справедливо, если выполняется запрос, который отбирает несколько записей из большой таблицы.) Связанные таблицы позволяют продолжать применять хорошо знакомый конструктор запросов программы
Access и устраняют возможность ошибок преобразования запроса.

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

Вы узнали о связанных таблицах в главе 19. В оставшейся части данной главы предпола­гается, что создается проект Access.

 

 

Подсказка

Хотите вернуться назад другим путем и переслать данные из SQL Server в Access? Если так, воспользуйтесь средствами импорта и экспорта в программе Access, о которых вы узнали в главе 19.


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

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

Вы начнете рассматривать различия в разд. "Добавление объектов в БД SQL Server" далее в этой главе. Но сначала стоит рассмотреть, как управлять только что созданной БД SQL Server.

 

 

Управление вашей БД

На территории Access легко удалять, перемещать, создавать резервную копию БД. Нужно всего лишь найти соответствующий файл с расширением accdb и использовать средство управления файлами, например программу Проводник ОС Windows.

Программа SQL Server работает иначе. Как вы уже узнали, она обрабатывает файлы за кадром, не раскрывая имен этих файлов. Но даже если вы знаете, где искать файлы БД, вы мало что сможете с ними сделать. Например, если нужно перенести БД SQL Server с одного сервера на другой, простая операция вырезания и вставки в Проводнике не сработает. Ис­ходный сервер будет продолжать искать БД, которую вы перенесли, а новый сервер будет продолжать ее игнорировать.

Если вы хотите выполнять задачи управления, такие как удаление, перенос или копиро­вание БД, необходимо работать с программой SQL Server, т. к. она может перемещать фай­лы и изменять каталог БД. Один из вариантов — загрузить из Интернета бесплатное про­граммное средство SQL Server Management Studio (см. рис. 20.2), которое поможет выполнять широкий круг задач администрирования. (Например, это средство понадобится, если у вас грандиозные планы, и вы начинаете настраивать параметры безопасности SQL Server для того, чтобы дать разрешения одним пользователям и отказать другим.) Однако самые распространенные задачи управления можно выполнять и прямо в программе Access. Секрет кроется в применении кнопки Office → Server(Office Сервер) (меню Server(Сервер) появляется, только если открыт проект Access).

У вас в меню есть следующие варианты.

■ Connection(Подключение). Выводит на экран диалоговое окно Data Link Properties(Свойство связи с данными), в котором можно изменять параметры подключения для вашего файла проекта Access. Обычно к этому окну обращаются при возникновении проблем подключения к вашей БД SQL Server. Например, если кто-то переместил или переименовал БД SQL Server или изменили имя пользователя и пароль, нужные вам для регистрации, именно в этом окне можно обновить ваши параметры. Задайте новый сер­вер, новое имя БД или сведения о пароле и щелкните мышью кнопку ОК для повторного подключения.


Подсказка

Если вы открыли файл проекта Access и не видите никаких таблиц, а в строке заголовка появ­ляется сообщение "Disconnected" ("Нет соединения"), программа Access не смогла подключить­ся к вашей БД. Если имя БД или сервера были изменены недавно, выберите кнопку Office → Server → Connection(Office Сервер Подключение) для устранения проблем.

Server Properties(Свойства сервера). Отображает диалоговое окно с базовыми сведениями о вашей БД, включая программу, которая выполняется (SQL Server), ее версию (у SQL Server 2005 номер версии 9), расположение сервера и текущей БД. В этом окне нельзя изменять никакие данные.

Link Tables(Связь с таблицами). Позволяет добавить одну или несколько связанных таблиц к вашему текущему проекту Access. Как правило, суть заключается в добавлении связанных таблиц из другой БД (или даже другого сервера БД). Таким образом, вы можете видеть все, используя один файл Access.

Back Up SQL Database(Резервная копия базы данных). Создает резервную копию вашей БД SQL Server в файле с расширением dat, который можно поместить куда угодно (на серверный или на свой компьютер). Специалисты SQL Server обычно предпочитают применять средство, позволяющее создавать резервные копии автоматически, например SQL Server Agent (это средство входит только в полную версию SQL Server).

Restore SQL Database(Восстановление базы данных Microsoft SQL Server из резервной копии). Берет файл с расширением dat, который был создан командой Office →Server → Back Up SQL Database(Office Сервер Резервная копия базы данных), и создает заново соответствующую БД SQL Server.

Transfer Database...(Перенос базы данных...). Позволяет переместить БД с одного компьютера на другой. (На обоих компьютерах должна быть программа SQL Server.) Программа Access сохраняет новое расположение сервера в вашем файле проекта, поэтому можно продолжать использование БД, находящейся на ее новом месте. Это средство

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

Copy Database File...(Копирование базы данных...). Если вы запускаете программу SQL Server на своем компьютере, этот вариант позволяет создать копию файла БД, которую можно взять на другой компьютер. (Если вы подключены к копии программы SQL Server на другом сервере, эта команда работать не будет.) Обычно легче использовать команду Office → Server → Transfer Database...(Office Сервер Перенос базы данных...), поскольку она делает все за один шаг.

Drop SQL Database(Удаление базы данных SQL Server). Стирает БД в программе SQL Server и удаляет ее.

Set Logon Password(Задание пароля входа в систему). Если применяется смешанный режим аутентификации, эта команда позволяет изменить пароль SQL Server.



Последнее изменение этой страницы: 2016-08-14; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.236.170.171 (0.022 с.)