Wizard voor het importeren van platte bestanden naar SQL
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Voor inhoud met betrekking tot de wizard Importeren en exporteren, zie Gegevens importeren en exporteren met de wizard Importeren en exporteren van SQL Server.
Wizard Plat bestand importeren is een eenvoudige manier om gegevens uit een plat bestand (.csv, .txt) te kopiëren naar een nieuwe tabel in uw database. De wizard voor het importeren van platte bestanden ondersteunt zowel bestanden met een door komma's gescheiden formaat als bestanden in een vast breedteformaat. In dit overzicht worden de redenen voor het gebruik van deze wizard beschreven, hoe u deze wizard kunt vinden en een eenvoudig voorbeeld kunt volgen.
Waarom zou ik deze wizard gebruiken?
Deze wizard is gemaakt om de huidige importervaring te verbeteren met behulp van een intelligent framework dat bekend staat als Programmasynthese met behulp van voorbeelden (PROSE-). Voor een gebruiker zonder gespecialiseerde domeinkennis kan het importeren van gegevens vaak een complexe, foutgevoelige en tijdrovende taak zijn. Deze wizard stroomlijnt het importproces zo eenvoudig als het selecteren van een invoerbestand en een unieke tabelnaam, en het PROSE-framework verwerkt de rest.
PROSE analyseert gegevenspatronen in uw invoerbestand om kolomnamen, gegevenstypen, scheidingstekens en meer af te leiden. Dit framework leert de structuur van het bestand en doet al het harde werk, zodat gebruikers dat niet hoeven te doen.
Voorwaarden
Deze functie is beschikbaar op SQL Server Management Studio (SSMS) v17.3 of hoger. Zorg ervoor dat u de nieuwste versie gebruikt. Hier vindt u de nieuwste versie .
Aan de slag
Voer de volgende stappen uit om toegang te krijgen tot de Wizard Importeren van plat bestand:
- Open SQL Server Management Studio-.
- Maak verbinding met een exemplaar van de SQL Server Database Engine of localhost.
- Vouw Databasesuit, klik met de rechtermuisknop op een database (test in het volgende voorbeeld), wijs Takenaan en selecteer Plat bestand importeren vóór Gegevens importeren.
Raadpleeg de volgende zelfstudie voor meer informatie over de verschillende functies van de wizard:
Handleiding
Voor deze zelfstudie kunt u gerust uw eigen platte bestand gebruiken. Anders gebruikt deze zelfstudie het volgende CSV-bestand uit Excel, dat u gratis kunt kopiëren. Gebruik dit CSV-bestand, geef het de titel example.csv en zorg ervoor dat u het als een CSV opslaat op een gemakkelijk toegankelijke locatie, zoals uw bureaublad.
Overzicht:
- Access Wizard
- invoerbestand opgeven
- Voorbeeld van gegevens
- Kolommen wijzigen
- Samenvatting
- resultaten
Stap 1: De Wizard en de Introductiepagina openen
Open de wizard zoals beschreven hier.
De eerste pagina van de wizard is de welkomstpagina. Als u deze pagina niet opnieuw wilt zien, kunt u ervoor kiezen om Deze startpagina niet meer weer te geven.
Stap 2: Invoerbestand opgeven
Selecteer bladeren om het invoerbestand te selecteren. De wizard zoekt standaard naar .csv- en .txt-bestanden. PROSE detecteert of het bestand een indeling met door komma's gescheiden of vaste breedte heeft, ongeacht de bestandsextensie.
De naam van de nieuwe tabel moet uniek zijn en de wizard staat u niet toe om verder te gaan als dat niet het geval is.
Stap 3: Voorbeeld van gegevens
De wizard genereert een voorbeeld dat u voor de eerste 50 rijen kunt bekijken. Als er problemen zijn, selecteert u Annuleren en gaat u verder met de volgende pagina.
Stap 4: Kolommen wijzigen
De wizard identificeert wat de juiste kolomnamen, gegevenstypen, enzovoort zijn. Hier kunt u de velden bewerken als ze onjuist zijn (het gegevenstype moet bijvoorbeeld een float zijn in plaats van een int).
In kolommen waarin lege waarden worden gedetecteerd, is 'Null-waarden toestaan' ingeschakeld. Als u echter null-waarden in een kolom verwacht en 'Null-waarden toestaan' niet is ingeschakeld, kunt u hier de tabeldefinitie bijwerken om null-waarden in een of alle kolommen toe te staan.
Ga verder wanneer u klaar bent.
Stap 5: Samenvatting
Dit is gewoon een overzichtspagina met uw huidige configuratie. Als er problemen zijn, kunt u teruggaan naar eerdere secties. Anders wordt, door voltooien te selecteren, geprobeerd het importproces uit te voeren.
Stap 6: Resultaten
Deze pagina geeft aan of het importeren is geslaagd. Als er een groen vinkje wordt weergegeven, is het gelukt, anders moet u mogelijk uw configuratie- of invoerbestand controleren op eventuele fouten.
Probleemoplossing
De wizard Plat bestand importeren detecteert de gegevenstypen op basis van de eerste 200 rijen. In scenario's waarin gegevens verder in het platte bestand niet voldoen aan de automatisch gedetecteerde gegevenstypen, treedt er een fout op tijdens het importeren. Het foutbericht ziet er ongeveer als volgt uit:
Error inserting data into table. (Microsoft.SqlServer.Prose.Import)
The given value of type String from the data source cannot be converted to type nvarchar of the specified target column. (System.Data)
String or binary data would be truncated. (System.Data)
Tactieken om deze fout te verminderen:
- Als u de grootten van het gegevenstype in de stap Kolommen wijzigen uitbreidt, zoals de lengte van een nvarchar-kolom, kan dit compenseren voor variaties in de gegevens uit de rest van het platte bestand.
- Als u foutrapportage inschakelt in de stap Kolommen wijzigen, vooral met een kleiner aantal, zal aangeven welke rijen in het vlakke bestand gegevens bevatten die niet bij de geselecteerde gegevenstypen passen. In een plat bestand waarin de tweede rij bijvoorbeeld een fout introduceert, geeft het uitvoeren van de import met foutrapportage met een bereik van 1 een specifiek foutbericht. Door het bestand rechtstreeks op de locatie te bekijken, kunnen meer gerichte wijzigingen worden aangebracht in de gegevenstypen op basis van de gegevens in de geïdentificeerde rijen.
Error inserting data into table occurred while inserting rows 1 - 2. (Microsoft.SqlServer.Prose.Import)
The given value of type String from the data source cannot be converted to type float of the specified target column. (System.Data)
Failed to convert parameter value from a String to a Double. (System.Data)
Op dit moment gebruikt de importeur codering op basis van de actieve codepagina van het systeem. Op de meeste computers wordt deze standaard ingesteld op ANSI.
Verwante inhoud
Meer informatie over de wizard.
- Meer informatie over het importeren van andere bronnen. Als u meer dan platte bestanden wilt importeren, raadpleegt u Gegevens importeren en exporteren met de wizard Importeren en exporteren van SQL Server.
- Meer informatie over het maken van verbinding met platte bestandsbronnen. Als u op zoek bent naar meer informatie over het maken van verbinding met platte bestandsbronnen, raadpleegt u Verbinding maken met een platte bestandsgegevensbron (SQL Server Import and Export Wizard).
- Meer informatie over PROSE. Zie PROSE SDKals u op zoek bent naar een overzicht van het intelligente framework dat door deze wizard wordt gebruikt.