Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Использование объекта SqlCommand

Объект SqlCommand исполняет запрос SQL, который может быть в форме встроенного текста, процедуры сервера или прямого доступа к таблице. Если это запрос на выборку данных SELECT, то данные обычно помещают в DataSet или в DataReader, но также можно производить и ручные манипуляции. Запросом на добавление данных является INSERT, на изменение UPDATE, на удаление DELETE.

Процедуры сервера нуждаются в параметрах. Они хранятся в коллекции Parametrs и имеют тип SqlParametr. Текстовые команды также могут получать параметры, перед которыми ставится префикс @.

"SELECT id FROM [sTudenT] WHERE SecondName = @DropDownList1.Text"

Или же можно использовать форматированный вывод:

string.Format("SELECT id FROM [sTudenT] WHERE SecondName = '{0}'", DropDownList1.Text);

Метод ExecuteNonQuery()

Данный метод применим к объектам типа SqlCommand. С помощью данного метода можно выполнять любые операции с базами данных, которые не связаны с запросом или получением данных, например, обновление, удаление записей, создание и изменение таблиц, создание процедур сервера. Она возвращает количество измененных записей в том случае, если выполняются команды Select, Update, Delete.

Метод ExecuteScalar()

Данный метод применим к объектам типа SqlCommand. Этот метод возвращает результат запроса в случае, если это единственное значение.

Рассмотрим пример:

string.Format("SELECT id FROM [sTudenT] WHERE SecondName = '{0}'", DropDownList1.Text);

В результате будет возвращено значение поля “id” базы даных, с параметром SecondName равным значению, выбранному из списка. Данный метод работает гораздо быстрее метода ExecuteReader().

Метод ExecuteReader()

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

В результате выполнения метода ExecuteReader() объекта Command создается объект DataReader. После использования данного метода необходимо закрывать соединения с базой, иначе такой процесс останется активным и будет занимать ресурсы. Закрыть соединение можно двумя способами. Первый – вызвать перегруженный метод ExecuteReader(), который принимает параметр типа CommandBehavior сл значением CommandBehavior.CloseConnection. В таком случае необходимо перелистать полученную выборку от начала до конца, и соединение закроется, когда будет достигнут конец.

В Visual Studio 2005 придусмотрен интерфейс автоматического вывода определнного столбца базы данных в такие элементы управления, к примеру, как DropDownList. На следующий рисунках изображен пример такого интерфеса:

 

Рис. 2. Выбор источника данных

 

Как видно на (рис. 2), сперва, выбирается источник данных. Этот источник создается автоматически.

Рис. 3. Указание пути к базе данных


На (рис. 3) выбирается строка присоединения к базе данных.

 

Рис. 4. Выбор столбца

 

На (рис. 4) выбирается столбец, который будет отображен в конкретном элементе управления. При компиляции страницы, в выбранном элементе управления, будет находится содержания выбранного столбца. Такой метод значительно упрощает разработку приложений.


Конструкторская часть

Структура базы данных

 

База данных состоит из трех таблиц. Таблица sTudenT служит для хранения фамилии, имени и отчества студента. Имеет следующую структуру:

 

id SecondName FirstName oT4ecTBo

 

Соответственно в столбец SecondName добавляется фамилия студента, в столбец FirstName добавляется имя студента, в столбец oT4ecTBo добавляется отчество студента. Столбец id задан как Primary Key, сведовательно значения этого столбца формируются автоматически.

Таблица subjects состоит из двух столбцов id и Name. Соответственно id формируется автоматически, а в столбец Name заносятся названия предметов.

 

id Name

 

Таблица markbook имеет более сложную структуру, она состоит из 4 столбцов.

 

id idst idsubj mark

 

Столбец id формируется автоматически. Столбец idst служит для занесения туда идентификационного номера студента, который берется из таблицы sTudenT. Столбец idsubj служит для занесения в него идентификационного номера предмета, который берется из таблицы subjects. Столбец mark служит для занесения оценки по определенному предмету. Все столбцы имеют формат int.


Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...