77 messaggi dal 16 maggio 2002
Salve,

ho cercato un pò on line ma non ho trovato niente che mi possa illuminare sulla possibilità in sql server, all'interno di una store, di sapere la dimensione in byte ad esempio che occupa un campo di una tabella o il totale di un record.

C'è un modo?

Grazie
2.410 messaggi dal 13 febbraio 2003
Contributi
"pipponet" <pipponet> ha scritto nel messaggio
news:244536@...
Salve,

ciao


ho cercato un pò on line ma non ho trovato niente che mi possa illuminare
sulla possibilità in sql server, all'interno di una store, di sapere la
dimensione in byte ad esempio che occupa un campo di una tabella o il
totale di un record.

C'è un modo?

buona lettura

http://blogs.aspitalia.com/cp/post566/VisualizzareSpazioOccupatoSingoleTabelle.aspx
http://blogs.aspitalia.com/cp/post739/CalcolareSpazioOccupatoDatabase.aspx
1.024 messaggi dal 19 dicembre 2003
Contributi | Blog
pipponet ha scritto:
Salve,

ho cercato un pò on line ma non ho trovato niente che mi possa illuminare sulla possibilità in sql server, all'interno di una store, di sapere la dimensione in byte ad esempio che occupa un campo di una tabella o il totale di un record.

C'è un modo?

Grazie


In primo luogo devi discriminare tra campi a lunghezza fissa e campi a lunghezza variabile. I primi occupano, a prescindere dal valore che rappresentano, sempre un valore fisso di byte. I campi a lunghezza variabile hanno una occupazione di spazio su disco legata al valore che rappresentano. Per valutare se un campo è a lunghezza fissa o a lunghezza variabile devi tenere conto del datatype utilizzato, del fatto che ammetta o meno valori NULL e dell'impostazione ANSI PADDING al momento in cui è stata creata la tabella. In merito a questo argomento fai riferimento a questo post

http://groups.google.it/group/microsoft.public.it.sql/msg/b7f8d1e008c99ce9?hl=it&

A questo punto, stabilita la reale occupazione di spazio di una singola riga, devi aggiungere qualche byte derivante dall'overhead legato alla gestione dei campi a lunghezza variabile e alla possibile presenza di valori NULL. Informazioni dettagliate su come procedere per il calcolo puoi trovarle incollando la stringa che segue nel menù GO->URL del Book On Line di SQL Server

createdb.chm::/cm_8_des_02_92k3.htm

Calcolarlo all'interno di una stored procedure... beh, vorrei conoscerne l'utilità... ;-)

Bye
77 messaggi dal 16 maggio 2002
Premetto cha sto risponendo subito dopo aver letto le vostre risposte, quindi senza aver avuto il tempo di seguire le vostre indicazioni.

x Bianchi che giustamente si chiede a che mi serve... ;-)

allora spero in poche parole di spiegarmi, in un'applicazione multiutente vorrei tener traccia per ognuno di essi dei dati che hanno creato, questo in modo tale poi da avere un limite che andrò a controllare prima una insert in una delle tabelle interessate, questo volevo farlo gestendo una sola tabella in cui ho un campo per ogni tabella che mi interessa controllare, in modo che per ogni utente saprò la dimensione totale di byte che ha creato per ongi tabella che voglio, per aggiornare queste dimensioni volevo usare un trigger che parte per l'insert di ogni tabella da monitorare e per la delete, per far questo però devo ogni volta calcolare la dimensione del record che si sta inserendo in modo che il trigger vada a sommarla nel campo della mia "tabella delle dimensioni", speravo quindi in un modo "dinamico" per far questo e non magari fare una stima delle dimensioni del record di ogni tabella e sommare sempre la stessa dimensione fissa.

Spero si essere stato chiaro

Grazie

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.