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

Làm cách nào để sao chép tất cả các trường của một bảng này sang một bảng khác, rộng hơn trong SQL Server 2005 Express?

Sau đó, bạn có thể sử dụng SQL động như thế này ...

DECLARE
    @Fields nvarchar(Max),
    @SQL nvarchar(Max);

SELECT
    @Fields = COALESCE(@Fields + ',', '') + column_name
FROM
    information_schema.columns
WHERE
    table_schema = 'dbo' AND
    table_name = 'Instance' AND
    column_name <> 'PrimaryKeyID' --here you exclude columns
ORDER BY
    ordinal_position;


SET @SQL = 'INSERT INTO dbo.Instance' 
    + ' ('
    + @Fields
    + ') SELECT '
    + ' ('
    + @Fields
    + ') FROM Template;'            

EXECUTE sp_executesql @SQL;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Phạm vi mức cách ly giao dịch

  2. Cách sử dụng RANK () trong SQL Server

  3. Sự cố triển khai cơ sở dữ liệu

  4. CHÈN VÀO BẢNG từ varchar-list được phân tách bằng dấu phẩy

  5. Kết nối Máy chủ Bastion với Máy chủ PostgreSQL qua Đường hầm SSH