Facciamo attenzione a separare le questioni...una cosa è il database (e le relative query) ed un'altra è il linguaggio (ASP ? non sono molto esperto) che utilizzi per fare la tua pagina
Hai provato ad eseguire la query DIRETTAMENTE sul database (con SQL Management Studio o Enterprise Manager o..) per vedere se funziona ?
Dopo essertela fatta stampare prova a copiartela in Management Studio ed a lanciarla. Se funziona NON è un problema del database
Prova a scriverla per intero ed ad eseguirla:
UPDATE dbo.DOC_DETT SET DONUMDOC = 23 WHERE DONUMDOC = 0
I campi pratica e praticatemp sono numerici ? (perchè allora mettere quel replace dell'apice ?)
Oppure sono stringhe ? (allora devi mettere gli apici anche ad inizio e fine del parametro)