|
|||
ПАРАМЕТРЫ ЗАПРОСА. задание значение параметра запроса 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);
|
|||
|