Sql select id from storedprocedure
У меня есть проблема с получением EmployeeID. У меня есть хранимая процедура, которая возвращает в одном текстовом поле Имя + Фамилия + docNo, например "Richarson Michael 674UK". Процедура Stroed ниже:
CREATE PROCEDURE [dbo].[SearchEmployee] @employeeSurname varchar(80) AS SELECT (surname+ ' ' + name+ ' ' + DocNo) as surname, EmployeeId FROM Employee WHERE surname LIKE @employeeSurname+ '%' RETURN
У меня есть также второй метод, который должен возвращать идентификатор сотрудника из TexBox выше. Мой метод всегда повторяет 0. Мой метод приведен ниже:
public int returnEmployeeId (string text) { int employeeId = 0; string query = "SELECT EmployeeId" + " FROM Employee WHERE surname LIKE'%" + text + "%'"; (...) return employeeId; }
Что я уже пробовал:
Я попытался создать метод returnEmployeeId для разных способов. Я хотел использовать свою процедуру strored, где SqlDataReader возвращает employeeId, но он всегда возвращает 0. Я также пытался создать другой запрос, но всегда один и тот же. Текстовое поле, в котором отображаются данные, имеет subbmited AutoPostBAck для true. Может ли кто-нибудь дать мне совет или подсказку, как решить мою проблему?
Заранее спасибо.
[no name]
"Я хотел использовать свою хранимую процедуру", а затем покажите нам код, в котором вы вызываете хранимую процедуру.
Member 11187739
Мой метод выглядит так:
public int returnEmployeeId (строковый текст) {
int employeeId = 0;
Sqlconnection для подключения = параметр "createconnection".newConnection();
Команда SqlCommand = new SqlCommand ("SearchEmployee", соединение);
команда.Параметры.AddWithValue ("@employeeSurname ", текст);
Читатель SqlDataReader;
использование (соединение)
{
соединение.Открыть();
использование (команда)
{
команда.CommandType = CommandType.Хранимая процедура;
читатель = команда.Метода executereader();
если (читатель.HasRows)
{
в то время как (читатель. читать())
{
кодсотрудника = инт.Анализа(ридер["Кодсотрудника"].Метод toString());
}
}
}
Параметр "createconnection".значение closeconnection(подключение);
}
вернуться кодсотрудника;
}
[no name]
Вам нужно установить тип команды в хранимую процедуру.