Хелпикс

Главная

Контакты

Случайная статья





ПАРАМЕТРЫ ЗАПРОСА. задание значение параметра запроса com.Parameters.AddWithValue(“@par”,group);



2.2. ПАРАМЕТРЫ ЗАПРОСА

 

Нередко запрос зависит от параметров, являющиеся значениями, по которым осуществляется выборка или другие фрагменты запроса, например, условия, формируемые программным образом. В этом случае используется коллекция параметров, которая имеется у объекта класса OdbcCommand. При создании параметра в запросе указывается символ “?”, а далее добавляется применяемое значение параметра в коллекцию параметров SQL-команды. В том случае, когда базовой технологией доступа является Ole Db, параметры в запросе именуются, причем эти имена начинаются с символа “@”. 

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

// создание подключения к базе данных на основе строки соединения 

// с указанием источника данных ODBC

OdbcConnection con = new OdbcConnection("DSN=proba");

// подключение к источнику данных con.Open();

// ввод номера группы

string group = Console.ReadLine();

// формирование команды SQL на выборку данных

OdbcCommand com = new OdbcCommand

                 ("select * from Sessions where NumGroup=?", con);       

 

// задание значение параметра запроса com.Parameters.AddWithValue(“@par”,group);

      

// выполнение команды на сервере и сохранение результата 

// в курсоре типа OdbcDataReader

OdbcDataReader dr=com.ExecuteReader();

// переход к следующей строке посредством функции Read() // пока строки в результате есть – печатаем информацию из строк while (dr.Read())

Console.WriteLine(“”+dr[“NumGroup”]+” “+dr[“idSubject”]+

                                         ” ”+dr[“Zach_exam”]);

// закрывается соединение dr.Close();

con.Close();

 

Нередко использование параметров применяется при удаленном вызове хранимых процедур и функций. Вспомним, что у нас имеются функции, которые позволяют перевести баллы в оценку (например, GetMark1). Вызов этой функции может быть таким:

// создание подключения к базе данных на основе строки соединения 

// с указанием источника данных ODBC

OdbcConnection con = new OdbcConnection("DSN=proba");

// подключение к источнику данных con.Open();

// ввод набранных баллов на экзамене string b = Console.ReadLine();

// формирование команды SQL на вызов функции и получение ее результата

OdbcCommand com = new OdbcCommand("select GetMark1(?)", con);       



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.