Snabb start: använda .NET (C#) för att ansluta och fråga efter data i Azure Database for MySQLQuickstart: Use .NET (C#) to connect and query data in Azure Database for MySQL

Den här snabbstarten visar hur du ansluter till en Azure Database for MySQL med hjälp av ett C#-program.This quickstart demonstrates how to connect to an Azure Database for MySQL by using a C# application. Den visar hur du använder SQL-instruktioner för att fråga, infoga, uppdatera och ta bort data i databasen.It shows how to use SQL statements to query, insert, update, and delete data in the database.

FörutsättningarPrerequisites

För den här snabb starten behöver du:For this quickstart you need:

  • Ett Azure-konto med en aktiv prenumeration.An Azure account with an active subscription. Skapa ett konto kostnads fritt.Create an account for free.
  • Skapa en Azure Database for MySQL enskild server med Azure PortalCreate an Azure Database for MySQL single server using Azure portal
    eller Azure CLI om du inte har något.or Azure CLI if you do not have one.
  • Baserat på om du använder offentlig eller privat åtkomst utför du en av åtgärderna nedan för att aktivera anslutningen.Based on whether you are using public or private access, complete ONE of the actions below to enable connectivity.
ActionAction AnslutningsmetodConnectivity method InstruktionsguideHow-to guide
Konfigurera brandväggsreglerConfigure firewall rules OffentligaPublic PortalPortal
CLICLI
Konfigurera tjänstens slut punktConfigure Service Endpoint OffentligaPublic PortalPortal
CLICLI
Konfigurera privat länkConfigure private link PrivatPrivate PortalPortal
CLICLI

Har du problem? Berätta för ossHaving issues? Let us know

Skapa ett C#-projektCreate a C# project

Kör följande i en kommandotolk:At a command prompt, run:

mkdir AzureMySqlExample
cd AzureMySqlExample
dotnet new console
dotnet add package MySqlConnector

Hämta anslutningsinformationGet connection information

Skaffa den information som du behöver för att ansluta till Azure Database för MySQL.Get the connection information needed to connect to the Azure Database for MySQL. Du behöver det fullständiga servernamnet och inloggningsuppgifter.You need the fully qualified server name and login credentials.

  1. Logga in på Azure Portal.Log in to the Azure portal.
  2. På den vänstra menyn i Azure Portal klickar du på Alla resurser. Sök sedan efter den server som du skapade (till exempel mydemoserver).From the left-hand menu in Azure portal, click All resources, and then search for the server you have created (such as mydemoserver).
  3. Klicka på servernamnet.Click the server name.
  4. På serverpanelen Översikt antecknar du Servernamn och Inloggningsnamn för serveradministratören.From the server's Overview panel, make a note of the Server name and Server admin login name. Om du glömmer lösenordet kan du även återställa det på den här panelen.If you forget your password, you can also reset the password from this panel. Azure Database för MySQL-servernamn

Steg 1: Anslut och infoga dataStep 1: Connect and insert data

Använd följande kod för att ansluta och läsa in data med SQL-instruktionerna CREATE TABLE och INSERT INTO.Use the following code to connect and load the data by using CREATE TABLE and INSERT INTO SQL statements. I koden används metoderna i MySqlConnection klassen:The code uses the methods of the MySqlConnection class:

Ersätt parametrarna Server, Database, UserID och Password med de värden som du angav när du skapade servern och databasen.Replace the Server, Database, UserID, and Password parameters with the values that you specified when you created the server and database.

using System;
using System.Threading.Tasks;
using MySqlConnector;

namespace AzureMySqlExample
{
    class MySqlCreate
    {
        static async Task Main(string[] args)
        {
            var builder = new MySqlConnectionStringBuilder
            {
                Server = "YOUR-SERVER.mysql.database.azure.com",
                Database = "YOUR-DATABASE",
                UserID = "USER@YOUR-SERVER",
                Password = "PASSWORD",
                SslMode = MySqlSslMode.Required,
            };

            using (var conn = new MySqlConnection(builder.ConnectionString))
            {
                Console.WriteLine("Opening connection");
                await conn.OpenAsync();

                using (var command = conn.CreateCommand())
                {
                    command.CommandText = "DROP TABLE IF EXISTS inventory;";
                    await command.ExecuteNonQueryAsync();
                    Console.WriteLine("Finished dropping table (if existed)");

                    command.CommandText = "CREATE TABLE inventory (id serial PRIMARY KEY, name VARCHAR(50), quantity INTEGER);";
                    await command.ExecuteNonQueryAsync();
                    Console.WriteLine("Finished creating table");

                    command.CommandText = @"INSERT INTO inventory (name, quantity) VALUES (@name1, @quantity1),
                        (@name2, @quantity2), (@name3, @quantity3);";
                    command.Parameters.AddWithValue("@name1", "banana");
                    command.Parameters.AddWithValue("@quantity1", 150);
                    command.Parameters.AddWithValue("@name2", "orange");
                    command.Parameters.AddWithValue("@quantity2", 154);
                    command.Parameters.AddWithValue("@name3", "apple");
                    command.Parameters.AddWithValue("@quantity3", 100);

                    int rowCount = await command.ExecuteNonQueryAsync();
                    Console.WriteLine(String.Format("Number of rows inserted={0}", rowCount));
                }

                // connection will be closed by the 'using' block
                Console.WriteLine("Closing connection");
            }

            Console.WriteLine("Press RETURN to exit");
            Console.ReadLine();
        }
    }
}

Har du problem? Berätta för ossHaving issues? Let us know

Steg 2: Läs dataStep 2: Read data

Använd följande kod för att ansluta och läsa data med SQL-instruktionen SELECT.Use the following code to connect and read the data by using a SELECT SQL statement. Koden använder MySqlConnection klassen med metoder:The code uses the MySqlConnection class with methods:

Ersätt parametrarna Server, Database, UserID och Password med de värden som du angav när du skapade servern och databasen.Replace the Server, Database, UserID, and Password parameters with the values that you specified when you created the server and database.

using System;
using System.Threading.Tasks;
using MySqlConnector;

namespace AzureMySqlExample
{
    class MySqlRead
    {
        static async Task Main(string[] args)
        {
            var builder = new MySqlConnectionStringBuilder
            {
                Server = "YOUR-SERVER.mysql.database.azure.com",
                Database = "YOUR-DATABASE",
                UserID = "USER@YOUR-SERVER",
                Password = "PASSWORD",
                SslMode = MySqlSslMode.Required,
            };

            using (var conn = new MySqlConnection(builder.ConnectionString))
            {
                Console.WriteLine("Opening connection");
                await conn.OpenAsync();

                using (var command = conn.CreateCommand())
                {
                    command.CommandText = "SELECT * FROM inventory;";

                    using (var reader = await command.ExecuteReaderAsync())
                    {
                        while (await reader.ReadAsync())
                        {
                            Console.WriteLine(string.Format(
                                "Reading from table=({0}, {1}, {2})",
                                reader.GetInt32(0),
                                reader.GetString(1),
                                reader.GetInt32(2)));
                        }
                    }
                }

                Console.WriteLine("Closing connection");
            }

            Console.WriteLine("Press RETURN to exit");
            Console.ReadLine();
        }
    }
}

Har du problem? Berätta för ossHaving issues? Let us know

Steg 3: uppdatera dataStep 3: Update data

Använd följande kod för att ansluta och läsa data med SQL-instruktionen UPDATE.Use the following code to connect and read the data by using an UPDATE SQL statement. Koden använder MySqlConnection klassen med metoden:The code uses the MySqlConnection class with method:

Ersätt parametrarna Server, Database, UserID och Password med de värden som du angav när du skapade servern och databasen.Replace the Server, Database, UserID, and Password parameters with the values that you specified when you created the server and database.

using System;
using System.Threading.Tasks;
using MySqlConnector;

namespace AzureMySqlExample
{
    class MySqlUpdate
    {
        static async Task Main(string[] args)
        {
            var builder = new MySqlConnectionStringBuilder
            {
                Server = "YOUR-SERVER.mysql.database.azure.com",
                Database = "YOUR-DATABASE",
                UserID = "USER@YOUR-SERVER",
                Password = "PASSWORD",
                SslMode = MySqlSslMode.Required,
            };

            using (var conn = new MySqlConnection(builder.ConnectionString))
            {
                Console.WriteLine("Opening connection");
                await conn.OpenAsync();

                using (var command = conn.CreateCommand())
                {
                    command.CommandText = "UPDATE inventory SET quantity = @quantity WHERE name = @name;";
                    command.Parameters.AddWithValue("@quantity", 200);
                    command.Parameters.AddWithValue("@name", "banana");

                    int rowCount = await command.ExecuteNonQueryAsync();
                    Console.WriteLine(String.Format("Number of rows updated={0}", rowCount));
                }

                Console.WriteLine("Closing connection");
            }

            Console.WriteLine("Press RETURN to exit");
            Console.ReadLine();
        }
    }
}

Har du problem? Berätta för ossHaving issues? Let us know

Steg 4: ta bort dataStep 4: Delete data

Använd följande kod för att ansluta och ta bort data med SQL-instruktionen DELETE.Use the following code to connect and delete the data by using a DELETE SQL statement.

Koden använder MySqlConnection klassen med metodenThe code uses the MySqlConnection class with method

Ersätt parametrarna Server, Database, UserID och Password med de värden som du angav när du skapade servern och databasen.Replace the Server, Database, UserID, and Password parameters with the values that you specified when you created the server and database.

using System;
using System.Threading.Tasks;
using MySqlConnector;

namespace AzureMySqlExample
{
    class MySqlDelete
    {
        static async Task Main(string[] args)
        {
            var builder = new MySqlConnectionStringBuilder
            {
                Server = "YOUR-SERVER.mysql.database.azure.com",
                Database = "YOUR-DATABASE",
                UserID = "USER@YOUR-SERVER",
                Password = "PASSWORD",
                SslMode = MySqlSslMode.Required,
            };

            using (var conn = new MySqlConnection(builder.ConnectionString))
            {
                Console.WriteLine("Opening connection");
                await conn.OpenAsync();

                using (var command = conn.CreateCommand())
                {
                    command.CommandText = "DELETE FROM inventory WHERE name = @name;";
                    command.Parameters.AddWithValue("@name", "orange");

                    int rowCount = await command.ExecuteNonQueryAsync();
                    Console.WriteLine(String.Format("Number of rows deleted={0}", rowCount));
                }

                Console.WriteLine("Closing connection");
            }

            Console.WriteLine("Press RETURN to exit");
            Console.ReadLine();
        }
    }
}

Rensa resurserClean up resources

Om du vill rensa alla resurser som används under den här snabb starten tar du bort resurs gruppen med hjälp av följande kommando:To clean up all resources used during this quickstart, delete the resource group using the following command:

az group delete \
    --name $AZ_RESOURCE_GROUP \
    --yes

Nästa stegNext steps

Hittar du inte det du letar efter? Berätta för oss.Cannot find what you are looking for?Let us know.