salve ragazzi,
vorrei il vostro aiuto per cercare di risolvere questo problema, o meglio... vorrei un suggerimento su come affrontarlo.
uso sql sever ed ho un database che è un'anagrafica.. ho alcune tabelle così collegate:
cittadino<-----abita_in----->domicilio
cittadino<-----vive in----->nucleo familiare
cioè cittadino si collega a domicilio e nucleo familiare, ma tra nucleo familiare e domicilio non x'è collegamento diretto...
ebbene, io ho realizzato il caso in cui un cittadino cambia domicilio.. ora vorrei affrontare l'evenienza in cui un'intera famiglia cambia casa...
l'approccio che ho seguito è questo: conto i componenti di una famiglia, e per ognuno cambio casa.
il conteggio è ok, il cambio famiglia lo so fare(update)... il problema è la scansione di ciò che trova, cioè fare l'update in base ai codici persona che trova... (un po' come un ciclo for o un foreach)
questa è la stored che ho abbozzato:
ALTER PROCEDURE dbo.spostam_famiglia
(
@nf int
)
AS
declare @num_comp as integer //così conto i record in una famiglia
set @num_comp=''
select @num_comp=(select count(*) from ruolo_in_nf_o_conviv where cod_nucleo_familiare=@nf)
begin
if @num_comp !=0 //se ho componenti in nf
select cod_persona from vive_in where cod_nf=@nf //trovo tutti i componenti di un nf
//e per ognuno vorrei fare la update...ma come si fa a scansionarli tutti???
//esiste il ciclo for/foreach per le sp?
/si possono usare gli array in questo contesto?
else print 'ciao' //è solo per motivi di test
end
RETURN
qualcuno di voi potrebbe darmi un consiglio o suggerimento a riguardo?
non so più come andare avanti...
grazie in anticipo a chi mi aiuterà