Entra

View Full Version : [SQL Server] Domanda semplice. Credo


almaxy
28-05-2009, 09:50
Una domanda semplice, spero.
Se io ho creato delle varie tabelle per il mio programmino WEB, e vado a modificare una tabella (ad esempio mod. un dato in un campo) tramite SQL Server senza usare il progr., rimane traccia della modifica in SQL Server? Ad esempio in qualche log di SQL ?
GRAZIE 1000

gugoXX
28-05-2009, 10:33
Una domanda semplice, spero.
Se io ho creato delle varie tabelle per il mio programmino WEB, e vado a modificare una tabella (ad esempio mod. un dato in un campo) tramite SQL Server senza usare il progr., rimane traccia della modifica in SQL Server? Ad esempio in qualche log di SQL ?
GRAZIE 1000

Di quanto viene eseguito su uno schema viene tenuto traccia nel transaction LOG.
Che e' poi il file .ldf associato al datafile .mdf

Il problema e' che questo file e' di un formato ovviamente proprietario, ed e' soggetto a cambiamenti nel tempo.

Esiste un comando non documentato per poter avere idea di cosa c'e' dentro
DBCC LOG (database, 1)
DBCC LOG (database, 2)
Ma piu' che altro si legge cosa e' successo, non i singoli comandi lanciati in qualche sessione.
Un po' come leggere un disassemblato di una macroistruzione.

Esistono anche prodotti di terze parti, ma non li conosco ne mai ne ho fatto uso.

Il file .ldf puo' essere troncato per liberare spazio o per snellire i backup, quindi non di tutto cio' che e' capitato restera' per sempre traccia.

almaxy
28-05-2009, 11:41
Di quanto viene eseguito su uno schema viene tenuto traccia nel transaction LOG.
Che e' poi il file .ldf associato al datafile .mdf

Il problema e' che questo file e' di un formato ovviamente proprietario, ed e' soggetto a cambiamenti nel tempo.

Esiste un comando non documentato per poter avere idea di cosa c'e' dentro
DBCC LOG (database, 1)
DBCC LOG (database, 2)
Ma piu' che altro si legge cosa e' successo, non i singoli comandi lanciati in qualche sessione.
Un po' come leggere un disassemblato di una macroistruzione.

Esistono anche prodotti di terze parti, ma non li conosco ne mai ne ho fatto uso.

Il file .ldf puo' essere troncato per liberare spazio o per snellire i backup, quindi non di tutto cio' che e' capitato restera' per sempre traccia.

OK ..
quindi se qualcuno modifica un campo e difficile risalire che quel campo è stato modificato in data x ?

techgeneration
28-05-2009, 12:30
Come diceva gugoXX rimane traccia nel file ".ldf" ed è quindi difficile alla data di modica di uno specifico comando lanciato, ma però esitono programmi che permettono di vederlo (anche se in maniera piuttosto vaga..) Non mi viene in mente il nome, ma appena vado in ufficio provo a chiedere ai colleghi che magari lo ricordano ;)

almaxy
01-06-2009, 10:02
Come diceva gugoXX rimane traccia nel file ".ldf" ed è quindi difficile alla data di modica di uno specifico comando lanciato, ma però esitono programmi che permettono di vederlo (anche se in maniera piuttosto vaga..) Non mi viene in mente il nome, ma appena vado in ufficio provo a chiedere ai colleghi che magari lo ricordano ;)

OK grazie , mi faresti un piacere ... :)
quindi attendo? grazie 1000

almaxy
03-06-2009, 16:56
OK grazie , mi faresti un piacere ... :)
quindi attendo? grazie 1000

:help:

techgeneration
03-06-2009, 17:01
:help:

Guarda il nome proprio mi sfugge, comunque non è molto vaga la traccia. Non c'è uno standard di tempo nel quale si può frugare, è tutta una questione di componentistica perchè ognuna ha i suoi tempi e molto di casistica. La risposta alla tua domanda quindi è: SI, si puo andare indietro e sapere approsimativamente con poco margine di errore la data in cui è stata compuita un'operazione!