Gegevens invoegen in een SQL Server 2017-database met behulp van SQL Operations Studio (nu Azure Data Studio genoemd).
Er zijn veel manieren om gegevens in een database in te voegen. De methode die u gebruikt, hangt grotendeels af van het type gegevens en van de context waarin deze worden ingevoegd. Laten we beginnen met het invoegen van gegevens met behulp van een SQL-script.
Gegevens invoegen met SQL-script
U kunt een script uitvoeren dat alle in te voegen gegevens bevat. Dit wordt mogelijk gemaakt met de SQL INSERT
verklaring.
Voer het volgende script uit tegen de Music
database die we eerder hebben gemaakt:
INSERT INTO Artists (ArtistName, ActiveFrom) VALUES ('Iron Maiden','1975-12-25'), ('AC/DC','1973-01-11'), ('Allan Holdsworth','1969-01-01'), ('Buddy Rich','1919-01-01'), ('Devin Townsend','1993-01-01'), ('Jim Reeves','1948-01-01'), ('Tom Jones','1963-01-01'), ('Maroon 5','1994-01-01'), ('The Script','2001-01-01'), ('Lit','1988-06-26'), ('Black Sabbath','1968-01-01'), ('Michael Learns to Rock','1988-03-15'), ('Carabao','1981-01-01'), ('Karnivool','1997-01-01'), ('Birds of Tokyo','2004-01-01'), ('Bodyjar','1990-01-01');
Het bovenstaande script voegt gegevens in de Artists
. in tafel. Het voegt een nieuwe rij in voor elke artiest.
Voer nu de volgende instructie uit:
SELECT * FROM Artists;
Die instructie retourneert de inhoud van de Artists
tafel:
Je zult zien dat de ArtistId
kolom gegevens bevat, hoewel we eigenlijk geen gegevens aan die kolom hebben toegevoegd. Dit komt omdat ArtistId
is een identiteitskolom (we gebruikten IDENTITY(1,1)
in de tabeldefinitie toen we de kolom maakten). De identiteitskolom voegt automatisch een oplopende waarde in bij elke rij, dus we hoeven geen waarde voor die kolom in te voegen - SQL Server doet dat voor ons. We hebben deze kolom ook ingesteld als de primaire sleutel toen we hem maakten, dus elke waarde is zeker uniek.
Voer nu het volgende script uit:
INSERT INTO Genres (Genre) VALUES ('Rock'), ('Jazz'), ('Country'), ('Pop'), ('Blues'), ('Hip Hop'), ('Rap'), ('Punk'); INSERT INTO Albums (AlbumName, ReleaseDate, ArtistId, GenreId) VALUES ('Powerslave', '1984-09-03', 1, 1), ('Powerage', '1978-05-05', 2, 1), ('Singing Down the Lane', '1956-01-01', 6, 3), ('Ziltoid the Omniscient', '2007-05-21', 5, 1), ('Casualties of Cool', '2014-05-14', 5, 1), ('Epicloud', '2012-09-18', 5, 1), ('Somewhere in Time', '1986-09-29', 1, 1), ('Piece of Mind', '1983-05-16', 1, 1), ('Killers', '1981-02-02', 1, 1), ('No Prayer for the Dying', '1990-10-01', 1, 1), ('No Sound Without Silence', '2014-09-12', 9, 4), ('Big Swing Face', '1967-06-01', 4, 2), ('Blue Night', '2000-11-01', 12, 4), ('Eternity', '2008-10-27', 12, 4), ('Scandinavia', '2012-06-11', 12, 4), ('Long Lost Suitcase', '2015-10-09', 7, 4), ('Praise and Blame', '2010-06-26', 7, 4), ('Along Came Jones', '1965-05-21', 7, 4), ('All Night Wrong', '2002-05-05', 3, 2), ('The Sixteen Men of Tain', '2000-03-20', 3, 2);
Dat script voegt gegevens in de andere twee tabellen in, zodat we later wat gegevens hebben om mee te werken als we wat query's uitvoeren.
Directe invoer
Met sommige GUI-tools kunt u via de interface gegevens rechtstreeks in de tabel invoeren. Zoals dit:
-
Tabel openen in bewerkingsmodus
Navigeer naar de tabel waarin u gegevens wilt invoeren.
Klik met de rechtermuisknop op de tabel en selecteer Gegevens bewerken (of hoe je GUI-tool het ook noemt — SSMS noemt het Top 200 rijen bewerken ).
-
Gegevens invoeren
De tabel wordt geopend, zodat u gegevens rechtstreeks in de cellen kunt typen.
U hoeft geen gegevens in te voeren in kolommen met automatisch gegenereerde waarden, zoals identiteitskolommen, tijdstempelkolommen, enz.
SQL Server zal meestal voorkomen dat u gegevens in dergelijke kolommen invoert.
Andere methoden
Hier zijn enkele andere methoden die kunnen worden gebruikt om een database met gegevens te vullen. Of u deze al dan niet kunt doen, hangt af van uw databasebeheertools en/of omgeving.
-
Kopiëren/plakken
Als u een GUI-tool heeft waarmee u gegevens rechtstreeks in de tabel kunt invoeren, kunt u ook merken dat u gegevens in bulk rechtstreeks in die tabel kunt kopiëren en plakken (SSMS ondersteunt dit). U kunt dus alle gegevens uit een spreadsheet kopiëren en deze vervolgens rechtstreeks in de databasetabel plakken.
SQL Server Management Studio (SSMS) stelt u in staat meerdere rijen gegevens in een tabel te plakken. -
Importeer de gegevens
Met sommige tools kunt u een bestand importeren dat alle benodigde gegevens bevat. U kunt bijvoorbeeld een Excel-spreadsheet of een .csv-bestand importeren.
Het BCP-hulpprogramma voor de opdrachtregel is een populair hulpmiddel voor het uitvoeren van bulkkopieerbewerkingen naar SQL Server. SQL Server Management Studio heeft een importwizard die u door het proces helpt.
Een "Import Flat File"-wizard werd geïntroduceerd in SSMS 17.3. Dit vereenvoudigt het importeren van platte bestanden zoals .csv en .txt. -
Website of andere aangepaste toepassing
Tegenwoordig worden de meeste databases gebouwd als onderdeel van de backend van een applicatie zoals een website, CRM, financiële applicatie, enz. Dergelijke applicaties stellen de eindgebruiker meestal in staat om gegevens in te voeren en bij te werken. Doorgaans zal de gebruiker gegevens invoegen via een formulier. Achter de schermen zal het formulier de gegevens invoegen in de juiste tabellen in de database. In dit geval hoeft de gebruiker niet eens te weten welke tabellen zich in de database bevinden. Het enige wat ze zien is de vorm. Eén formulier kan gegevens in meerdere tabellen invoegen.