C# - Come connettersi a un database MSSQL usando un SqlConnection

C# - Come connettersi a un database MSSQL usando un SqlConnection

È possibile utilizzare la classe SqlConnection per connettersi a un server MSSQL. Se abbiamo un database chiamato MyDb con una semplice tabella chiamata MyEntities :

CREATE TABLE [dbo].[MyEntities](
	[Id] [int] IDENTITY(1,1) NOT NULL,
	[Text] [nvarchar](max) NOT NULL,
   CONSTRAINT [PK_MyEntities] PRIMARY KEY CLUSTERED 
   (
	  [Id] ASC
   )
)

Per collegarci ad un database abbiamo bisogno di una stringa di connessione, ne esistono diverse varianti. Uno di base sarebbe:

  • "Origine dati=;Catalogo iniziale=;Sicurezza integrata=;"

Ecco due esempi con valori:

  • "Data Source=localhost;Initial Catalog=MyDb;Integrated Security=True;"
  • "Data Source=localhost;Initial Catalog=MyDb;User Id=MyDbUser;Password=MyDbPassword1234;Trusted_Connection=True"

Puoi trovare molti altri esempi di stringhe di connessione qui.

Quando abbiamo la nostra stringa di connessione possiamo connetterci al database usando un nuovo SqlConnection:

using (var sqlConnection = new SqlConnection(@"Data Source=localhost;Initial Catalog=MyDb;Integrated Security=True;"))
{
    using (SqlCommand command = new SqlCommand("SELECT * FROM [dbo].[MyEntities];", sqlConnection))
    {
        sqlConnection.Open();
        SqlDataReader reader = command.ExecuteReader();
    }
}

In quanto sopra creiamo una nuova SqlConnection e la forniamo con la nostra stringa di connessione. Lo avvolgiamo in un'istruzione using in modo che venga eliminato quando abbiamo finito di usarlo. Un modo per usare la connessione consiste nel creare un nuovo SqlCommand ed eseguire un lettore da esso. In questo modo puoi leggere i dati restituiti da una query riga per riga. Ho omesso la mappatura di questo per semplificare l'esempio.

Spero che questo semplice esempio ti sia utile, fammi sapere cosa ne pensi nei commenti qui sotto!