Я написал одну процедуру SQL, где я написал один курсор, и каждый раз, когда мне приходится динамически передавать имя таблицы в запрос курсора.Как передать табличное имя PL PLUS курсору динамически?
create or replace
PROCEDURE Add_DEN as
v_TableName VARCHAR2(4000) := 'BO_USER_DATA';
cursor c_DEN is select * from BO_USER_DATA; // Want to pass dynamically ,now hardcoded
r_DEN c_DEN%ROWTYPE;
fetch c_DEN into r_DEN;
v_Name := r_DEN."Name";
Могу ли я написать что-то вроде этого
cursor c_DEN is "select * from " || v_TableName;
помощь?
Вы уверены, что вы добавили этот вопрос правильно? Потому что ни один из 'create or replace',' varchar2', ': =' и '% ROWTYPE' не работает в SQL Server. –
Пример кода не T-SQL – CPMunich
Вам действительно нужен курсор? Есть несколько раз, когда нужно использовать курсор, но они очень часто используются, когда нет необходимости в одном. Почти в любое время, когда вы делаете DML, вам не нужен курсор. –