Boa tarde!
Eu não consegui entender direito a necessidade de se utilizar o cursor. No exemplo do professor, eu consegui entender como usar, mas não me ficou claro, num exemplo prático, o porquê de ser útil.
Boa tarde!
Eu não consegui entender direito a necessidade de se utilizar o cursor. No exemplo do professor, eu consegui entender como usar, mas não me ficou claro, num exemplo prático, o porquê de ser útil.
Um exemplo prático:
Tenho uma rotina que serve na prática para avaliar o histórico de um aluno de graduação e ver se esse aluno pode ou não ser matriculado numa disciplina contida numa lista que ele escolheu. Isso é feito para todos os alunos de um curso, para todos os cursos de um campus.
O cursor foi aplicado, entre outros, na hora de iterar pelos alunos de um curso X. Isso porque é necessário verificar para cada aluno:
E depois aprovar ou negar a solicitação de cada uma das disciplinas escolhidas por esse aluno. Nisso existem problemas difíceis de serem tratados na interface, que no fim ficam a cargo do banco resolver, por exemplo: o aluno pode escolher fazer uma disciplina C2 mas essa disciplina tem como pré-requisito a disciplina C, que o aluno ainda não fez.
Em suma, o cursor é usado para realizar um processamento complexo, formado por operações aninhadas que as vezes também complexas.