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

sqlbulkcopy, chcę nadpisać bieżące wiersze w bazie danych

W Mitch wskazuje na funkcje kopiowania zbiorczego (SqlBulkCopy , bcp i BULK INSERT ) obsługują tylko wstawki, a nie aktualizacje.

Normalnym podejściem do problemu jest wykonanie ładowania zbiorczego w dwóch (lub więcej) krokach — najpierw używasz wstawiania zbiorczego do załadowania danych do tabeli pomostowej, a następnie za pomocą zapytania wstawiasz/aktualizujesz rekordy w tabelach głównych na podstawie dane w tabelach pomostowych, na przykład:

INSERT INTO MyTable
(Column1, Column2, [etc...])
SELECT Column1, Column2, [etc...] 
FROM Test_Staging
WHERE [Some condition]

Zobacz SQL SERVER – Wstaw dane z jednej tabeli do innej aby uzyskać informacje o tym, jak wstawić do jednej tabeli z innej tabeli - możliwe jest również dołączenie w UPDATE, ale mam problem ze znalezieniem dobrego źródła na ten temat.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Logowanie nie powiodło się dla użytkownika „DOMAIN\MACHINENAME$”

  2. Jak ustawić strefę czasową dla aplikacji ASP.NET MVC 5?

  3. Osiągnięcie limitu parametrów 2100 (SQL Server) podczas korzystania z Contains()

  4. Jak serializować duży wykres obiektu .NET do obiektu BLOB programu SQL Server bez tworzenia dużego bufora?

  5. WYBRAĆ wiersze z czasem 30 minut lub krótszym?