Tips-Tricks

SQLServer 2016 non si avvia ... ecco uno dei perchè

Emanuele Zanchettin

TCP Provider, error: 0 - Il computer remoto ha rifiutato la connessione di rete. Microsoft SQL Server, Error: 1225” questo semplice e significativo messaggio ci avvisa che il Server SQL, col quale stiamo cercando di collergarci, non risponde. Ci possono essere molteplici motivi di questo “disservizio”, in questo articolo viene illustrata una delle cause e la sua risoluzione.

SQLServer 2016 non si avvia 1

Una volta controllato che il server sia in funzione e collegato alla rete, verifichiamo che effettivamente il servizio relativo a SQL Server 2016 sia in esecuzione.

Lista Trace Flags Ufficiale

Davide Mauri

Il SQL Server Tiger Team si sta occupando, tra le altre cose, di tenere aggiornata la lista di tutti i trace flag disponibili in SQL Server per modificare il funzionamento nel caso sia assolutamente necessario. La lista è disponibile qui:

http://aka.ms/traceflags

Occhio, come al solito, che i trace flags non sono da usare alla leggera, quindi usateli se e solo se è strettamente necessario!

Se vi state chiedendo, invece, cosa sono i trace flags, riporto la definzione qui:

JSON support is generally available in Azure SQL Database

Emanuele Zanchettin

Generalmente disponibile il supporto JSON per Azure SQL Database

Azure Blog post

MSDN Blog post

I nuovi database creati in Azure SQL Database hanno di Default il Compatibility Level 130, i database creati da qualche tempo hanno invece Default il Compatibility Level 120.

Per controllare il compatibility level corrente SELECT name, compatibility_level FROM sys.databases WHERE name = 'database_name';

Se compatibility_level non è uguale a 130, è necessario impostarlo ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = 130

Usare json su SQLServer 2005, 2008, 2012 e 2014 .. è possibile!

Vedere il supporto nativo di JSON su SQLServer 2016 (e anche su Azure SQLDatabase) mi ha fatto pensare che magari era possibile averlo in forma semplificata anche su versioni precedenti.

Tutto è nato dalla necessità di gestire un flusso di dati con una Stored Procedure in arrivo da una WebAPI. Inizialmente la WebAPI, dopo aver fatto gli opportuni controlli logici di validità, deserializzava il flusso per poi formattare una stringa da passare alla Stored Procedure. La gestione del parametro in ingresso alla SP come TABLE non sembrava possibile utilizzando EF6, quindi si è optato di mantenere la SP nello stato originale, ovvero con la stringa e altri parametri per i caratteri separatori.

Come effettuare il Debug di un Trigger (T-SQL)

Sergio Govoni

I più importanti linguaggi di programmazione hanno strumenti di debug integrati direttamente nell’IDE. Il debugger ha tipicamente un’interfaccia grafica che consente di esaminare i valori che assumono le variabili durante l’esecuzione, il flusso del programma (step-by-step) e permette di definire punti di interruzione in corrispondenza dei quali fermare l’esecuzione del programma.

Ogni sviluppatore ama gli strumenti di debug, specialmente quando deve capire perché un programma genera un errore o quando viene effettuato un calcolo errato.