Могу я спросить, как правильно сделать вложенный курсор в sybase?Я получаю две ошибки в своем коде ниже.
- Необходимо объявить переменную @ notes
- Объявление курсора должно быть единственным оператором в пакете запроса.
Текущая попытка кодирования:
DECLARE c3 cursor FOR
select distinct cust_ac_no from tempdb..M3_SHP_ACCOUNT_NOTES
where cust_ac_no in ('851243048')
--,'851261620
--order by cust_ac_no, inst_seq_no, ord_no, ref_no, acv_no
GO
DECLARE
@exec_str1 varchar(8000),
@exec_str2 varchar(8000),
@cust_ac_no varchar(10),
@c_ac varchar(10),
@notes varchar(4000),
@notes2 varchar(8000)
--select @exec_str1 = "select distinct notes from tempdb..M3_SHP_ACCOUNT_NOTES where cust_ac_no = "
OPEN c3
FETCH c3 into @cust_ac_no
WHILE @@sqlstatus = 0
BEGIN
DECLARE c2 cursor FOR
select distinct notes from tempdb..M3_SHP_ACCOUNT_NOTES
where cust_ac_no = + "'" + @cust_ac_no + "'"
order by cust_ac_no, inst_seq_no, ord_no, ref_no, acv_no
GO
OPEN c2
FETCH c2 into @notes
WHILE @@sqlstatus = 0
BEGIN
print @notes
FETCH c2 into @notes
END
CLOSE c2
DEALLOCATE c2
print @cust_ac_no
FETCH c3 into @cust_ac_no
END
CLOSE c3
DEALLOCATE c3