Scenario:
Du arbetar som SQL Server-utvecklare, du fick data i en Excel-fil för dbo.Kundtabeller. Du måste ladda dessa data till dbo.Customer-tabellen. Hur skulle du generera Insert Statement för given data i excel så att du kan ladda in i DEV, QA, UAT och Production.Lösning:
Det finns flera sätt att uppnå detta krav. Du kan använda Import/Export Wizard först för att ladda data till utvecklingsmiljön och sedan generera infogningsskript från tabell i SSMS.Om du inte vill ladda data till tabellen kan du använda Excel formler för att generera Insert-sats från data.
Hur man genererar Infoga-satser från Excel för SQL Server-tabell |
Först och främst behöver vi veta i vilken tabell vi vill ladda data. I vårt fall är det dbo.Customer. Även namnen på kolumner som tillhandahålls i Excel är exakt samma som i våra dbo. Kundtabellskolumner.
Gå till valfri kolumn och skriv den här formeln som visas nedan i första raden. Jag skrev i kolumn G.
="insert into dbo.Customer ("&A1&","&B1&","&C1&","&D1&","&E1&") Värden"
I Excel börjar vi formeln med =(lika med tecken). För sammanlänkning använder vi &. För att lägga till en sträng måste vi sätta dubbla citattecken runt som vi gjorde för kommatecken ",".
Hur man genererar infogningssatser för SQL Server-tabell från Excel-data |
Nu är den första delen av vårt Insert-uttalande klar. vi måste generera värdedelen för vår infogningssats. Gå till andra raden och använd formeln nedan.
="('"&A2&"','"&B2&"',"&C2&",'"&TEXT(D2,"dd/mm/åååå") &"',"&E2&"),"
Dra ner det hela vägen till sista posten. Alla Insert-värden kommer att genereras. Kopiera alla värden från kolumn G och klistra in i SSMS. Det kommer att finnas extra kommatecken(,) i slutet med sista posten. Ta bort det och kör din insert-sats för att testa om det fungerar som förväntat.
Hur man genererar Infoga uttalanden från Excel-fil för SQL Server-tabellen |
Här är de genererade infogningsutlåtandena, kopierade från G-kolumnen och inklistrade i SSMS.
Videodemo :Hur man genererar Insert-sats från Excel Records for SQL Server Table