Scénář:
Pracujete jako SQL Server Developer, obdrželi jste data v souboru Excel pro tabulky dbo.Customer. Tato data musíte načíst do tabulky dbo.Customer. Jak byste vygenerovali příkaz Insert pro daná data v Excelu, abyste je mohli načíst do DEV, QA, UAT a Production.Řešení:
Existuje několik způsobů, jak tohoto požadavku dosáhnout. Nejprve můžete použít Průvodce importem/exportem k načtení dat do vývojového prostředí a poté vygenerování vkládacího skriptu z tabulky v SSMS.Pokud data nechcete načítat do tabulky , můžete použít Excel vzorce pro generování příkazu Insert z dat.
Jak vygenerovat příkazy Insert z Excelu pro tabulku SQL Server |
V první řadě musíme vědět, do které tabulky chceme data načíst. V našem případě je to dbo.Customer. Také názvy sloupců v Excelu jsou přesně stejné jako v naší tabulce dbo.Customer sloupců.
Přejděte do libovolného sloupce a zadejte tento vzorec, jak je uvedeno níže v prvním řádku. Zadal jsem do sloupce G.
="vložit do dbo.Customer ("&A1&","&B1&","&C1&","&D1&","&E1&") Hodnoty"
V Excelu začínáme vzorec s =(rovná se znaménko). Pro zřetězení používáme &. Chcete-li přidat řetězec, musíme umístit dvojité uvozovky, jako jsme to udělali pro čárku ",".
Jak vygenerovat příkazy Insert pro tabulku serveru SQL z dat aplikace Excel |
Nyní je připravena první část našeho příkazu Insert. musíme vygenerovat část hodnot pro náš příkaz insert. Přejděte na 2. řádek a použijte níže uvedený vzorec.
="('"&A2&"','"&B2&"',"&C2&",'"&TEXT(D2,"dd/mm/rrrr") &"',"&E2&"),"
Přetáhněte jej úplně dolů až k poslednímu záznamu. Budou vygenerovány všechny hodnoty Insert. Zkopírujte všechny hodnoty ze sloupce G a vložte je do SSMS. U posledního záznamu bude na konci čárka(,) navíc. Odstraňte to a spusťte příkaz insert a otestujte, zda funguje podle očekávání.
Jak vygenerovat příkazy Insert ze souboru aplikace Excel pro tabulku SQL Server |
Zde jsou vygenerované příkazy vložení, zkopírované ze sloupce G a vložené do SSMS.
Video ukázka:Jak vygenerovat příkaz Insert ze záznamů aplikace Excel pro tabulku SQL Server