У меня возникли проблемы с попыткой понять это. Я использую хранимые процедуры SQL Server, которые открывают курсор для динамического запроса и запускают результат. например:Чтение вывода курсора и сохранение в наборе данных в C#
CREATE PROCEDURE
@results CURSOR VARYING OUTPUT
@id INT
AS
DECLARE @query AS VARCHAR(max)
SET @query = ' SELECT * from EMPtable where'[email protected]+'= emp.id'
SET @results = CURSOR FOR SELECT @query
OPEN @results
Затем я закрываю и де-выделяю курсор. Я понятия не имею, как читать значения набора данных и хранить их в таблице данных на C#. Я пробовал использовать адаптер данных и считыватель данных, но все возвращает нулевое значение или возвращает ошибку.
это не процедура, которую вы хотите использовать, делать то, что вы хотите сделать. ваша вся процедура должна быть просто 'CREATE PROCEDURE EMP_GetByID @id INT AS BEGIN SELECT * FROM EMPtable WHERE id = @id END' – JamieD77
@ JamieD77, который должен быть ответом. Я почти заплакал, когда увидел, что эта процедура использует курсор для оператора select. –
@SeanLange ничто из этого не имеет большого смысла. он даже не скомпилировал бы, если бы он не помещал sql в varchar из-за 'emp.id' – JamieD77