Scenarie:
Du arbejder som SQL Server Developer, du modtog data i en Excel-fil til dbo.Kundetabeller. Du skal indlæse disse data i dbo.Customer-tabellen. Hvordan ville du generere Insert Statement for givne data i excel, så du kan indlæse i DEV, QA, UAT og Production.Løsning:
Der er flere måder at opfylde dette krav på. Du kan bruge Import/Export Wizard først til at indlæse dataene i udviklingsmiljøet og derefter generere indsæt script fra tabel i SSMS.Hvis du ikke ønsker at indlæse dataene i tabellen, kan du bruge Excel formler til at generere Indsæt sætning fra data.
Sådan genereres Insert Statements fra Excel til SQL Server-tabel |
Først og fremmest skal vi vide, i hvilken tabel vi vil indlæse dataene. I vores tilfælde er det dbo.Kunde. Også navnene på kolonner i Excel er nøjagtig de samme som vores dbo.Kundetabelkolonner.
Gå til en hvilken som helst kolonne og skriv denne formel som vist nedenfor i første række. Jeg skrev i kolonne G.
="indsæt i dbo.Kunde ("&A1&","&B1&","&C1&","&D1&","&E1&") Værdier"
I Excel starter vi formel med =(lig med tegn). Til sammenkædning bruger vi &. For at tilføje streng skal vi sætte dobbelte anførselstegn rundt som vi gjorde for komma ",".
Sådan genereres Insert Statements til SQL Server-tabel fra Excel-data |
Nu er første del af vores Insert-erklæring klar. vi er nødt til at generere værdier-delen til vores insert statement. Gå til 2. række og brug nedenstående formel.
="('"&A2&"','"&B2&"',"&C2&",'"&TEXT(D2,"dd/mm/åååå") &"',"&E2&"),"
Træk den helt ned til sidste post. Alle Insert-værdier vil blive genereret. Kopier alle værdierne fra kolonne G og indsæt i SSMS. Der vil være ekstra komma(,) til sidst med sidste post. Fjern det, og kør din insert-sætning for at teste, om det fungerer som forventet.
Sådan genereres Insert Statements fra Excel-fil til SQL Server-tabel |
Her er de genererede Insert Statements, kopieret fra G Column og indsat i SSMS.
Videodemo:Sådan genereres Insert-sætning fra Excel Records til SQL Server-tabel