Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak generować instrukcje wstawiania z danych programu Excel i ładować do tabeli programu SQL Server — samouczek SQL Server / TSQL, część 103

Scenariusz:

Pracujesz jako SQL Server Developer, otrzymałeś dane w pliku Excel dla tabel dbo.Customer. Musisz załadować te dane do tabeli dbo.Customer. Jak wygenerowałbyś Insert Statement dla podanych danych w Excelu, aby można było załadować je do DEV, QA, UAT i Production.

Rozwiązanie:

Istnieje wiele sposobów na spełnienie tego wymogu. Możesz najpierw użyć Kreatora importu/eksportu, aby załadować dane do środowiska programistycznego, a następnie wygenerować skrypt wstawiania z tabeli w SSMS.

Jeśli nie chcesz ładować danych do tabeli , możesz użyć programu Excel formuła do wygenerowania instrukcji Insert z danych.

Jak generować instrukcje Insert z programu Excel dla tabeli SQL Server

Przede wszystkim musimy wiedzieć, do której tabeli chcemy załadować dane. W naszym przypadku jest to dbo.Customer. Również nazwy kolumn podane w Excelu są dokładnie takie same jak nasze kolumny tabeli dbo.Customer.
Przejdź do dowolnej kolumny i wpisz tę formułę, jak pokazano poniżej w pierwszym wierszu. Wpisałem w kolumnie G.

="insert in dbo.Customer ("&A1&","&B1&","&C1&","&D1&","&E1&") Wartości"

W Excelu zaczynamy formułę od =(równe znakowi). Do konkatenacji używamy &. Aby dodać ciąg znaków, musimy wstawić podwójne cudzysłowy, tak jak w przypadku przecinka ",".

Jak generować instrukcje Insert dla tabeli SQL Server z danych programu Excel

Teraz pierwsza część naszej instrukcji Insert jest gotowa. musimy wygenerować część wartości dla naszej instrukcji insert. Przejdź do drugiego wiersza i użyj poniższego wzoru.

="('"&A2&"','"&B2&"',"&C2&",'"&TEXT(D2,"dd/mm/rrrr") &"',"&E2&"),"

Przeciągnij go aż do ostatniego rekordu. Wszystkie wartości Insert zostaną wygenerowane. Skopiuj wszystkie wartości z kolumny G i wklej do SSMS. Na końcu ostatniego rekordu będzie dodatkowy przecinek(,). Usuń to i uruchom instrukcję INSERT, aby sprawdzić, czy działa zgodnie z oczekiwaniami.

Jak wygenerować instrukcje Insert z pliku Excel dla tabeli SQL Server


Oto wygenerowane instrukcje Insert, skopiowane z kolumny G i wklejone do SSMS.

Prezentacja wideo:Jak wygenerować instrukcję Insert z rekordów programu Excel dla tabeli programu SQL Server




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zachować jedno wystąpienie połączenia SQL Server otwarte dla wielu żądań w C#?

  2. SQL Server ROWCOUNT_BIG()

  3. SQL Server Wyzwalacz do pracy z wstawianiem wielu wierszy

  4. Zapytanie indeksujące dotyczące odbudowy serwera SQL

  5. T-SQL uzyskuje liczbę dni roboczych między 2 datami