.NET är fantastiskt och ger massor av verktyg för att arbeta med databaser och datakällor. Det finns dock tillfällen då en datakälla kanske inte stöds i sig. I ett fall som MySQL kanske du inte ser MySQL-anslutningsalternativen när du skapar bindningskällor eller datakällor för ditt projekt.
Vad gör du då?
Nåväl, allt är inte förlorat! Det är bara lite extraarbete.
Ladda först ner några verktyg som inkluderar MySQL Connectors:
- https://dev.mysql.com/downloads/file/?id=492453
- https://dev.mysql.com/downloads/file/?id=491638
- https://dev.mysql.com/downloads/connector/net/#downloads
När du har laddat ner installationsfilerna installerar du dem en efter en. Se till att om du använder Visual Studio, att du stänger det innan du installerar.
När du har installerat verktygen för MySQL, öppna Visual Studio och skapa ett Windows Forms-projekt.
Välj BindingSource kontrollera från verktygslådan och dubbelklicka på den. I egenskapsfönstret för den bindande källan väljer du Datakälla egenskap och välj sedan Lägg till projektdatakälla . Detta öppnar konfigurationsguiden för datakälla.
Välj Databas och välj sedan Nästa.
Välj Datamängd och välj sedan Nästa.
Välj Ny anslutning knappen.
Välj Ändra knappen.
Lägg märke till att MySQL Database nu finns i listan, som visas i figur 1.
Figur 1 – Ändra datakälla
Välj MySQL-databas från listan och klicka sedan på OK, dialogrutan Lägg till anslutning kommer att se ut som i figur 2.
Figur 2 – Lägg till anslutning
Ange servernamn, användarnamn och lösenord enligt figur 2 och klicka sedan på OK.
Välj dina databasobjekt som behövs enligt figur 3.
Figur 3 – Databasobjekt
Klicka på Slutför.
Du kan nu ansluta till en MySQL-databas och arbeta med den.
Vad händer om jag inte vill använda en Bindingsource, eller ens designvy? Vad händer om jag bara vill använda kod?
Låt oss ta en titt.
För att importera datafunktionerna måste du importera MySQL-namnutrymmena såväl som System.Data-namnutrymmet, så här:
using MySql.Data.MySqlClient; using System.Data;
Du använder helt enkelt use-satsen i C#. Nu har du tillgång till alla funktioner i MySQLClient-namnutrymmet
Skapa ett anslutningsobjekt med följande kod:
MySqlConnectionParameters connectionParameters =
new MySqlConnectionParameters("Server", "Database", "User", "Password"); string conStr =
"server=ServerName;port=PortNumber;database=DatabaseName;uid=Username;password=Password;TreatTinyAsBoolean=false";
För att hämta data från en MySQL lagrad procedur, använd följande kod:
MySqlConnection con = new MySqlConnection(conStr); MySqlDataAdapter adapter = new MySqlDataAdapter(); MySqlCommand cmd; cmd = new MySqlCommand("CALL StoredProcedureName(@Parameter)", con); cmd.Parameters.AddWithValue("@Parameter", Parameter); cmd.Parameters.AddWithValue("@ToDate", ToDate); adapter.SelectCommand = cmd; DataSet ds = new DataSet(); adapter.Fill(ds);
Slutsats
Som du kan se är det ganska enkelt att ansluta till en MySQL-databas med .NET. Lycka till med kodningen!