Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Вебмастеру -> Сеппа Д. -> "Microsoft ADO.NET" -> 47

Microsoft ADO.NET - Сеппа Д.

Сеппа Д. Microsoft ADO.NET — М.: Русская Редакция, 2003. — 640 c.
ISBN 5-7502-0223-2
Скачать (прямая ссылка): mcrsftado2003.pdf
Предыдущая << 1 .. 41 42 43 44 45 46 < 47 > 48 49 50 51 52 53 .. 260 >> Следующая

End Sub
Visual C# MET
string strConn = "Fruvider-SOLOLEDB: Data Source^ local )\\!*etSDK; " + "Initial Catalog=Northtfind;Trusted_Connectian=Yes; '
=
cn. StateChange += new StateChangeEventHaridler(cn.StareCfianga);
cn.Open();
cn.CloseO;
static void cn_StateChange(object sender, StateChangeEventArgs e) {
Console. WriteLine< "StateChange event occurred");
ГЛАВА 3 Подключение к базе данных 79
Console.KritsLtneC"\tFroir " & е. Origlr.alState. ToSt rin$K)); Console.WriteLlne("\tTo " 1 e.CurrentState.ToStringO);
3
Вопросы, которые стоит задавать почаще
Вопрос. Добавив соединение в Server Explorer, я могу завершить psiSocy,
перезагрузиться, и Visual Studio .NET будет помнить заданные мной параметры. Где хранит эти параметры Server Explorer?
Ответ. Server Explorer хранит параметры отдельных пользователей. Если на одном компьютере с Visual Studio .NET работают несколько разработчиков, их параметры Server Explorer будут храниться отдельно, в файлах с именем (Default Yic\v).SEVicvv. Этот файл находится в одной из вложенных папок каталога Settings пользователя. Таким мер.! '.им если файловая система диска отличается от К'ТТЙ пароли окажутся доступны любому чси jbckv. который сядет за компьютер.
Вопрос. Я разрабатываю приложение, использующее SQL Server качестве серверной БД. Какую проверку подлинности мне следует задействовать — стандартную или интегрированную?
Ответ. Это сложный вопрос. Решение зависит от архитектуры вашего приложе-нияи ют. как вы управляете безопасностью БД SQL Server. В двухуровневых приложениях я предпочитаю использовать пк: ei рпр< чепп ivio а в многоуровневых — стандартную проверку подлинности,
При использовании интегрированной проверки подлинности вам не требуется предлагать пользователю ввести имя и пароль или жестко задавать эти реквизиты в приложении. При использовании в многоуровневых приложениях (где код доступа к данным выполняется в виде Web-сервиса или компонента СОМч-j стандартной проверки подлинности вы сможете задействовать пул соединений. В такой архитектуре компонент определяет пользователя. Это похоже на уход от ответственности, и именно так иногда обстоят дела. Тем не менее я считаю данное решение полностью пригодным.
А что, если единственная точка проверки реквизитов пользователя компонентом промежуточного уровня — код доступа к данным? Если БД сообщает, что у пользователя нет доступа к ней, это обычно означает, что пользователю вообще не требовалось обращаться к компоненту промежуточного В таком слу-
чае вы зря тратите время и компрометируете систему безопасности, позволяя пользователю выполнять в компоненте код до подключения к БД.
Рекомендую настроить систему безопасности так, чтобы пользователь предоставлял реквизиты для доступа к компоненту. Затем компонент будет использовать стандартную строку подключения. Поскольку все клиенты работают с одинаковой строкой, компонент сможет поместить их соединения в один пул. Если все клиенты подключаются к БД под разными реквизитами, использовать пул не стоит.
Подробнее о стандартной и интегрированной проверке подлинности — в SQL Server Books Online.
80 Часть II Подключаемся: использование поставщика данных ЛЕТ
Вопрос. В целях безопасности я ограничил доступ используемого мной в приложении объекта Connection к БД. Тем не менее мне нужны некоторые административные функции Server Explorer, например возможность создавать и изменять структуру моих таблиц. Как сбалансировать безопасность объекта Connection, используемого мной в приложении в период выполнения и необходимую мне Б период разработки функциональность?
Ответ. Используйте в Server Explorer несколько соединений. Можно просто добавить новое соединение, которое использует учетную запись с расширенными привилегиями доступа к БД. Если соединение в вашем приложении фактически не применяется, оно не будет включено в него.
Выполнение запросов к базе данных
т>
О предыдущей главе рассказывалось о подключении к БД с использованием объекта Connection MicrosoftADO.NET. Здесь обсуждается выполнение запросов к БД при помощи объекта Command модели ADO.NET.
Основное внимание уделено конкретным задачам, связанным с использованием объекта Command. Также я расскажу о двух других объектах ADO.NET - DataReader и Parameter. Первый из них позволяет просматривать результаты запросов, а второй — выполняй. запросы. Затем я покажу, как быстро и просто создавать объекты Command средствами среды разработки Microsoft Visual Studio .NET. Кроме того, мы рассмотрим свойства, методы и события объектов Command, DataReader и Parameter.
Использование объектов Command в коде
Объекты Command позволяют выполнять разнообразные запросы. Некоторые из этих объектов возвращают данные в форме набора результатов, а другие пзмс па-ют структуру хранилища данных. Сейчас вы узнаете, как создавать объекты Command и выполнять с их помощью нужные вам задачи.
Создание объекта Command
Известны три способа создания объекта Command. Первый — когда просто создается новый экземпляр объекта при помощи ключевого слова New и затем задаются необходимые свойства. Второй — применить один из имеющихся конструкторов и затем указать строку запроса и объект Connection. Третий — вызывать метод CreateComtrmnU объекта Connection (подробнее об этом ¦ в главе 3):
Предыдущая << 1 .. 41 42 43 44 45 46 < 47 > 48 49 50 51 52 53 .. 260 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100