Chiarimento in merito ad un messaggio di errore

martedì 17 novembre 2009 - 15.13

motogpdesmo16 Profilo | Senior Member

Buongiorno a tutti,
ho un problema quando tento di aggiornare un record su una tabella.
Tale tabella (T1) ha due trigger: uno si occupa di aggiornare quattro campi che mi servono per monitorare le movimentazioni eseguite sul record e scatta solo su INSERT ed UPDATE; l'altro si occupa invece di aggiornare un'altra tabella, che chiameremo T2 (che a sua volta ha due trigger: il solito che provvede a monitorare le operazioni ed un altro che provvede invece ad effettuare aggiornamenti sempre su T2) prelevando dalla tabella Inserted uno dei valori appena modificati e scatta in tutti i casi: INSERT, UPDATE, DELETE.

Il messaggio di errore che mi compare è il seguente: È stato superato il numero massimo di livelli di nidificazione consentito (32) per stored procedure, funzioni, trigger o viste.

QUesto errore mi compare solo quando creo, su T2, anche il trigger di monitoraggio delle operazioni. Se invece è presente solo il secondo, che come detto effettua aggiornamenti su T2 stessa, non si verifica alcun problema e tutte le operazioni avvengono correttamente.

Prima di incunearmi nel mostrarvi la struttura DB e relativi trigger, avreste qualche suggerimento da darmi almeno relativamente alla strada da prendere per cercare di venire a capo?
Grazie

carloalberto Profilo | Junior Member

credo che ci si ricorsività nei trigger , cioè uno chiama l'altro... ma è solo una ipotesi :-) ciao

motogpdesmo16 Profilo | Senior Member

Effettivamente l'avevo pensato anche io: per come sono strutturate le tabelle, è presente un meccansimo quasi a "matriosca" ossia la modifica su una tabella, fa scattare modifche/insert su un'altra.
Tuttavia proverò a riguardare meglio i trigger. Grazie per il consiglio.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5