Snabbstart: Använd .NET (C#) för att fråga en databas

Gäller för:Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

I den här snabbstarten använder du .NET - och C#-kod för att ansluta till en databas. Sedan kör du en Transact-SQL-instruktion för att fråga efter data. Den här snabbstarten gäller för Windows, Linux och macOS och utnyttjar den enhetliga .NET-plattformen.

Förutsättningar

Följande krävs för att slutföra den här snabbstarten:

Skapa ett nytt .NET-projekt

  1. Öppna en kommandotolk och skapa en mapp med namnet sqltest. Gå till mappen och kör detta kommando.

    dotnet new console
    

    Detta kommando skapar nya app-projektfiler, inklusive en inledande C#-kodfil (Program.cs), en XML-konfigurationsfil (sqltest.csproj) och de binärfiler som behövs.

  2. Kör det här kommandot i kommandotolken ovan.

    dotnet add package Microsoft.Data.SqlClient
    

    Det här kommandot lägger till Microsoft.Data.SqlClient paketet i projektet.

Infoga kod för att fråga databasen i Azure SQL Database

  1. Öppna Program.cs i en textredigerare som Visual Studio Code.

  2. Ersätt innehållet med nedanstående kod och lägg till lämpliga värden för server, databas, användarnamn och lösenord.

Kommentar

Om du vill använda en ADO.NET-anslutningssträng ersätter du de 4 raderna i kodinställningen för server, databas, användarnamn och lösenord med raden nedan. Ange ditt användarnamn och lösenord i strängen.

builder.ConnectionString="<your_ado_net_connection_string>";

using Microsoft.Data.SqlClient;

namespace sqltest
{
    class Program
    {
        static void Main(string[] args)
        {
            try 
            { 
                SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder();

                builder.DataSource = "<your_server.database.windows.net>"; 
                builder.UserID = "<your_username>";            
                builder.Password = "<your_password>";     
                builder.InitialCatalog = "<your_database>";
         
                using (SqlConnection connection = new SqlConnection(builder.ConnectionString))
                {
                    Console.WriteLine("\nQuery data example:");
                    Console.WriteLine("=========================================\n");
                    
                    connection.Open();       

                    String sql = "SELECT name, collation_name FROM sys.databases";

                    using (SqlCommand command = new SqlCommand(sql, connection))
                    {
                        using (SqlDataReader reader = command.ExecuteReader())
                        {
                            while (reader.Read())
                            {
                                Console.WriteLine("{0} {1}", reader.GetString(0), reader.GetString(1));
                            }
                        }
                    }                    
                }
            }
            catch (SqlException e)
            {
                Console.WriteLine(e.ToString());
            }
            Console.WriteLine("\nDone. Press enter.");
            Console.ReadLine(); 
        }
    }
}

Kör koden

  1. Kör följande kommandon när du uppmanas till det.

    dotnet restore
    dotnet run
    
  2. Kontrollera att raderna returneras, dina utdata kan innehålla andra värden.

    Query data example:
    =========================================
    
    master    SQL_Latin1_General_CP1_CI_AS
    tempdb    SQL_Latin1_General_CP1_CI_AS
    WideWorldImporters    Latin1_General_100_CI_AS
    
    Done. Press enter.
    
  3. Välj Retur för att stänga programfönstret.

Nästa steg