sql >> Database teknologi >  >> RDS >> Sqlserver

Bulk DELETE på SQL Server 2008 (Er der noget som Bulk Copy (bcp) til sletning af data?)

Nej.

Du vil have en DELETE med en WHERE-sætning:dette er standard SQL.

Hvad du kan gøre, er batch-sletninger på denne måde:

SELECT 'Starting' --sets @@ROWCOUNT
WHILE @@ROWCOUNT <> 0
    DELETE TOP (xxx) MyTable WHERE ...
 

Eller hvis du vil fjerne en meget høj procentdel af rækker...

SELECT col1, col2, ... INTO #Holdingtable FROM MyTable WHERE ..opposite condition.. TRUNCATE TABLE MyTable INSERT MyTable (col1, col2, ...) SELECT col1, col2, ... FROM #Holdingtable

  1. Tekst eller numerisk felt - En simpel SQL-metode til at skifte datatype

  2. Forskelle mellem SQL &NoSQL-databaser - MySQL &MongoDB-sammenligning

  3. Forældede funktioner til at tage ud af din værktøjskasse – Del 1

  4. Hvordan indsætter man i samme tabel i MySQL?