Ansluta till en Access-databas i .NET Framework-program
Note
Datauppsättningar och relaterade klasser är äldre .NET Framework-tekniker från början av 2000-talet som gör det möjligt för program att arbeta med data i minnet medan programmen kopplas från databasen. Teknikerna är särskilt användbara för program som gör det möjligt för användare att ändra data och spara ändringarna tillbaka till databasen. Även om datauppsättningar har visat sig vara en mycket framgångsrik teknik rekommenderar vi att nya .NET-program använder Entity Framework Core. Entity Framework är ett mer naturligt sätt att arbeta med tabelldata som objektmodeller, och det har ett enklare programmeringsgränssnitt.
Du kan ansluta till en Access-databas (antingen en .mdb
fil eller en .accdb
fil) med hjälp av Visual Studio. När du har definierat anslutningen visas data i fönstret datakällor. Därifrån kan du dra tabeller eller vyer till designytan.
Note
Om du använder Visual Studio för att ansluta till Access-databaser måste du vara medveten om att versioner av Visual Studio före Visual Studio 2022 är alla 32-bitarsprocesser. Det innebär att vissa dataverktyg i Visual Studio 2019 och tidigare bara kan ansluta till Access-databaser med hjälp av 32-bitars dataproviders.
Om du använder Visual Studio 2022 för att ansluta till Access-databaser måste du vara medveten om att Visual Studio 2022 nu är en 64-bitarsprocess. Det innebär att vissa dataverktyg i Visual Studio inte kommer att kunna ansluta till Access-databaser med hjälp av 32-bitars dataprovidrar.
Om du behöver underhålla 32-bitarsprogram som ansluter till Access-databaser kan du fortfarande skapa och köra programmet med Visual Studio 2022. Men om du behöver använda något av Visual Studio Data Tools, till exempel Server Explorer, datakällsguiden eller DataSet Designer, måste du använda en tidigare version av Visual Studio som fortfarande är en 32-bitarsprocess. Den senaste versionen av Visual Studio som var en 32-bitarsprocess var Visual Studio 2019.
Om du planerar att konvertera projektet till en 64-bitarsprocess rekommenderar vi att du använder 64-bitars Microsoft Access-databasmotorn, även kallad Access Connectivity Engine (ACE). Vänligen se för mer information om att OLE DB-provider för Jet och ODBC-drivrutin endast är 32-bitarsversioner.
Förutsättningar
Om du vill använda dessa procedurer behöver du:
- Visual Studio
- Ett Windows Forms- eller WPF-projekt
- Antingen en Access-databas (
.accdb
fil) eller en Access 2000-2003-databas (.mdb
fil). Följ proceduren som motsvarar din filtyp.
Skapa en datauppsättning för en .accdb-fil
Anslut till databaser som skapats med Microsoft 365, Access 2016, Access 2013, Access 2010 eller Access 2007 med hjälp av följande procedur.
Öppna ett Windows Forms- eller WPF-programprojekt i Visual Studio.
Om du vill öppna fönstret datakällor trycker du på Ctrl+Q, anger "data" i sökrutan och väljer datakällor fönstret. Eller på menyn Visa väljer du Andra Windows>-datakällor. Eller på tangentbordet trycker du på Skift+Alt+D.
I fönstret datakällor klickar du på Lägg till ny datakälla.
Konfigurationsguiden för datakälla öppnas.
Välj Database på sidan Välj en datakällatyp och välj sedan Nästa.
Välj datauppsättning på sidan Välj en databasmodell och välj sedan Nästa.
På sidan Välj din dataanslutning väljer du Ny anslutning för att konfigurera en ny dataanslutning.
Dialogrutan Lägg till anslutning öppnas.
Om inte har angetts till Microsoft Access Database Fileväljer du knappen Ändra.
Dialogrutan Ändra datakälla öppnas. I listan över datakällor väljer du Microsoft Access Database File. Alternativet .NET Framework Data Provider för OLE DB är redan förvalt. Välj OK.
Välj Bläddra bredvid Databasfilnamnoch navigera sedan till filen
.accdb
och välj Öppna.Note
Om bitigheten (32-bitars eller 64-bitars) i Microsoft Office och Visual Studio inte matchar visas ett fel när du ansluter till en Access-databas. I Visual Studio 2019 får du ett felmeddelande om att databasprovidern inte är registrerad. I Visual Studio 2022 visas ett fel som du inte kan ansluta till en 32-bitars dataprovider. Lös det här felet genom att kontrollera att om du använder en 32-bitarsversion av Office använder du Visual Studio 2019 eller tidigare. För en 64-bitarsversion av Office behöver du Visual Studio 2022 eller senare.
Ange ett användarnamn och lösenord (om det behövs) och välj sedan OK.
Välj Nästa på sidan Välj dataanslutning.
Du kan få en dialogruta som anger att datafilen inte finns i det aktuella projektet. Välj Ja eller Nej.
Välj Nästa på sidan Spara anslutningssträng till programkonfigurationsfilen.
Expandera noden Tabeller på sidan Välj databasobjekt.
Välj de tabeller eller vyer som du vill ta med i datauppsättningen och välj sedan Slutför.
Datauppsättningen läggs till i projektet och tabellerna och vyerna visas i fönstret datakällor.
På 64-bitarsdatorer med 64-bitars Access-databasmotorn måste du se till att programmet körs som ett 64-bitarsprogram. Öppna projektegenskaperna (tryck på Alt+Retur eller högerklicka på projektnoden och välj Egenskaper). På fliken Build avmarkerar du kryssrutan Föredrar 32-bitars.
Anslutningssträngen lagras i app.configoch i filen Settings.settings under Egenskaper i Solution Explorer.
Skapa en datauppsättning för en .accdb-fil
Anslut till databaser som skapats med Microsoft 365, Access 2016, Access 2013, Access 2010 eller Access 2007 med hjälp av följande procedur.
Öppna ett Windows Forms- eller WPF-programprojekt i Visual Studio.
Om du vill öppna fönstret datakällor trycker du på Ctrl+Q, anger "data" i sökrutan och väljer datakällor fönstret. Eller på menyn Visa väljer du Andra Windows>-datakällor. Eller på tangentbordet trycker du på Skift+Alt+D.
I fönstret datakällor klickar du på Lägg till ny datakälla.
Konfigurationsguiden för datakälla öppnas.
Välj Database på sidan Välj en datakällatyp och välj sedan Nästa.
Välj datauppsättning på sidan Välj en databasmodell och välj sedan Nästa.
På sidan Välj din dataanslutning väljer du Ny anslutning för att konfigurera en ny dataanslutning.
Dialogrutan Lägg till anslutning öppnas.
Om inte har angetts till Microsoft Access Database Fileväljer du knappen Ändra.
Dialogrutan Ändra datakälla öppnas. I listan över datakällor väljer du Microsoft Access Database File. Alternativet .NET Framework Data Provider för OLE DB är redan förvalt. Välj OK.
Välj Bläddra bredvid Databasfilnamnoch navigera sedan till filen
.accdb
och välj Öppna.Note
Om bitigheten (32-bitars eller 64-bitars) i Microsoft Office och Visual Studio inte matchar visas ett fel när du ansluter till en Access-databas. I Visual Studio 2019 får du ett felmeddelande om att databasprovidern inte är registrerad. I Visual Studio 2022 visas ett fel som du inte kan ansluta till en 32-bitars dataprovider. Lös det här felet genom att kontrollera att om du använder en 32-bitarsversion av Office använder du Visual Studio 2019 eller tidigare. För en 64-bitarsversion av Office behöver du Visual Studio 2022 eller senare.
Ange ett användarnamn och lösenord (om det behövs) och välj sedan OK.
Välj Nästa på sidan Välj dataanslutning.
Du kan få en dialogruta som anger att datafilen inte finns i det aktuella projektet. Välj Ja eller Nej.
Välj Nästa på sidan Spara anslutningssträng till programkonfigurationsfilen.
Expandera noden Tabeller på sidan Välj databasobjekt.
Välj de tabeller eller vyer som du vill ta med i datauppsättningen och välj sedan Slutför.
Datauppsättningen läggs till i projektet och tabellerna och vyerna visas i fönstret datakällor.
Skapa en datauppsättning för en .mdb fil
Anslut till databaser som skapats med Access 2000-2003 med hjälp av följande procedur.
Öppna ett Windows Forms- eller WPF-programprojekt i Visual Studio.
På menyn Visa väljer du Andra Windows>-datakällor.
I fönstret datakällor klickar du på Lägg till ny datakälla.
Konfigurationsguiden för datakälla öppnas.
Välj Database på sidan Välj en datakällatyp och välj sedan Nästa.
Välj datauppsättning på sidan Välj en databasmodell och välj sedan Nästa.
På sidan Välj din dataanslutning väljer du Ny anslutning för att konfigurera en ny dataanslutning.
Om datakällan inte är Microsoft Access Database File (OLE DB)väljer du Ändra för att öppna dialogrutan Ändra datakälla och väljer Microsoft Access Database Fileoch väljer sedan OK.
I Database-filnamnetanger du sökvägen och namnet på den
.mdb
fil som du vill ansluta till och väljer sedan OK.Välj Nästa på sidan Välj dataanslutning.
Välj Nästa på sidan Spara anslutningssträng till programkonfigurationsfilen.
Expandera noden Tabeller på sidan Välj databasobjekt.
Välj vilka tabeller eller vyer du vill ha i datauppsättningen och välj sedan Slutför.
Datauppsättningen läggs till i projektet och tabellerna och vyerna visas i fönstret datakällor.
Visa den genererade koden
Dataverktygen konfigureras för att generera mycket kod automatiskt när du utför vissa åtgärder i formulärdesignern. När du till exempel drar och släpper en tabell till formuläret läggs en DataGridView
till och kod skapas för att ansluta data med kontrollen. Du kan visa den här koden i filen *.Designer.cs
. Den genererade koden kan variera beroende på din version av Visual Studio.
Grattis! Med lite hjälp från Visual Studio har du skapat en formulärbaserad redigeringsupplevelse för en Access-datatabell.
Nästa steg
Datauppsättningen som du nyss skapade är tillgänglig i fönstret datakällor. Du kan nu utföra någon av följande uppgifter:
Välj objekt i fönstret Datakällor och dra dem till din formulär- eller designyta (se Binda Windows Forms-kontroller till data i Visual Studio eller översikt över WPF-databindning).
Öppna datakällan i Dataset Designer för att lägga till eller redigera objekten som utgör datauppsättningen.
Lägg till valideringslogik i händelsen ColumnChanging eller RowChanging av datatabellerna i datauppsättningen (se avsnitt Verifiera data i datauppsättningar).