Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

XÓA hàng loạt trên SQL Server 2008 (Có bất kỳ điều gì giống như Sao chép hàng loạt (bcp) để xóa dữ liệu không?)

Không.

Bạn muốn DELETE với mệnh đề WHERE:đây là SQL chuẩn.

Những gì bạn có thể làm là xóa hàng loạt như thế này:

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

Hoặc nếu bạn muốn loại bỏ một tỷ lệ hàng rất cao ...

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bảng Tally để chèn các ngày còn thiếu giữa hai ngày? SQL

  2. Cách bật quyền hàng loạt trong SQL Server

  3. lỗi 'datetime2' khi sử dụng khung thực thể trong VS 2010 .net 4.0

  4. Tạo lịch biểu tác nhân SQL Server với T-SQL

  5. Tại sao SQL Server làm tròn kết quả của phép chia hai số nguyên?