Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Colonna calcolata
martedì 02 marzo 2010 - 12.07
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ciccioherz
Profilo
| Junior Member
93
messaggi | Data Invio:
mar 2 mar 2010 - 12:07
in un thread precedente (
http://www.dotnethell.it/forum/messages.aspx?ThreadID=34541
) mi è stato consigliato di usare una colonna calcolata per raggiungere il mio scopo, ovvero l'aggiornamento di un campo di tipo bit automatico in base al confronto tra data attuale e data scadenza.
ringraziando comunque per il suggerimento, confermo che non si addice al mio scopo e spiego perchè.
ho fatto la seguente prova: ho creato la tabella come postata nell'altro thread e ho impostato una data antecedente quella odierna, il bit era quindi true.
poi ho modificato l'orologio di sistema del pc, facendo credere al server sql che è trascorso un giorno.
ho eseguito una query (una select * from) e il bit aveva lo stesso valore..per cui l'unica soluzione che ho è quella di creare una stored procedure che si occupi di aggiornare tutti i campi manualmente..
grazie lo stesso :)
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mar 2 mar 2010 - 13:29
>ho eseguito una query (una select * from) e il bit aveva lo stesso
>valore..per cui l'unica soluzione che ho è quella di creare una
>stored procedure che si occupi di aggiornare tutti i campi manualmente..
Sei libero di non crederci, ma funziona come descritto.
>grazie lo stesso :)
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
ciccioherz
Profilo
| Junior Member
93
messaggi | Data Invio:
mer 3 mar 2010 - 18:56
Ah ma io sarei felicissimo di capire che sia davvero così..ma come ho spiegato, facendo quella semplice prova il valore non mi è stato modificato in seguito alla select..
forse funziona solo con gli insert e update?
o forse il mio test non è stato affidabile?
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mer 3 mar 2010 - 20:45
>Ah ma io sarei felicissimo di capire che sia davvero così..ma
>come ho spiegato, facendo quella semplice prova il valore non
>mi è stato modificato in seguito alla select..
Non so cosa dirti.
Questo è quanto riportato anche sui BOL: "Unless otherwise specified, computed columns are virtual columns that are not physically stored in the table. Their values are recalculated every time they are referenced in a query. The Database Engine uses the PERSISTED keyword in the CREATE TABLE and ALTER TABLE statements to physically store computed columns in the table. Their values are updated when any columns that are part of their calculation change".
>forse funziona solo con gli insert e update?
Ripeto, dato che la colonna calcolata non è PERSISTED verrà valutato il valore solo ed esclusivamente ad ogni SELECT.
>o forse il mio test non è stato affidabile?
Non saprei.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
ciccioherz
Profilo
| Junior Member
93
messaggi | Data Invio:
gio 4 mar 2010 - 09:51
ok, proverò con test incrociati e posterò l'esito. grazie
ciccioherz
Profilo
| Junior Member
93
messaggi | Data Invio:
gio 4 mar 2010 - 10:33
Ok..ho sbagliato io qualcosa nel test di giorni fa. funziona tutto regolarmente, anche con le sole select. grazie 1000
Torna su
Stanze Forum
Elenco Threads
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 !