Stored Procedure e DROP esplicito delle tabelle temporanee

Nelle attività di performance tuning sono molti i “dettagli” che possono aiutare a guadagnare tempo prezioso. Anche poco, d’accordo, ma sempre di un risparmio si tratta.   Un esempio: se trovo, all’interno di una stored procedure, una DROP di una tabella temporanea la elimino.   Sappiamo, o dovremmo sapere, che questi oggetti temporanei vengono distrutti,…

0

Dei decimal e dei bytes regalati…

Mi chiedo quale sia il senso di definire, sulla struttura di una tabella, una colonna DECIMAL(3,0). Sostanzialmente un attributo in grado di memorizzare cifre comprese tra -999 e 999.   La domanda, che dovrebbe guidare ogni scelta in fase di modellazione, è: qual è il tipo più piccolo in grado di memorizzare l’informazione più grande?…

1

Safely empty or fill tables without violating any foreign key relationship

Le relazioni tra le tabelle di un database sono il meccanismo necessario a garantire l’integrità del dato. Una tabella “figlia” non potrà, se opportunamente relazionata, contenere righe che possano legarsi a righe NON esistenti sulla tabella “padre” (Ad esempio: è impossibile che esistano delle righe di una fattura relative ad una riga di intestazione che…

0

Insert dummy data in tables with relationship

Torno spesso sull’argomento relativo ai test di carico / performance dei database e sull’importanza di poter profilare l’utilizzo che avranno con una mole di dati quantomeno simile allo scenario di produzione. Diventa importante, quindi, avere un qualsivoglia meccanismo di generazione automatica di dati in modo tale da demandare ad un processo automatico il popolamento delle…

0

[T-SQL] Insert dummy and test data in tables

Lavorando con applicazioni database mi rendo conto che c’è una fase importantissima che troppo spesso viene trascurata: il test delle performance sui presunti carichi che si dovranno sostenere. Mi spiego con una domanda: qual ‘è il senso di testare le nostre applicazioni con due, cinque, dieci righe nelle tabelle? (per poi sentirsi dire… ma in…

1

Happy easter with a TSQL egg :-)

Non essendo capace a fare un uovo di cioccolato, mi sono limitato a costruirlo con il tipo geometry 🙂   DECLARE @x AS float = -1.5; DECLARE @tTable TABLE( geo geometry ); WHILE @x < 1.5 BEGIN INSERT INTO @tTable SELECT geometry::STGeomFromText( ‘POINT(‘ + cast(@x as varchar) + ‘ ‘ + cast ( ( 1…

0

Tempdb, data files & performance

Un’istanza SQL Server ha un solo tempdb e, per questo e per il fatto che molte attività lo possono utilizzare in maniera intensiva, potrebbe diventare un collo di bottiglia. Per verificare problemi di performance posso iniziare controllando la contesa delle risorse tramite la DMV sys.dm_os_waiting_tasks, quindi con uno script simile a: USE tempdb; GO SET…

0