Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Pertahankan waktu henti tabel seminimal mungkin dengan mengganti nama tabel lama, lalu mengisi versi baru?

Gunakan tipuan untuk menghindari manipulasi tabel secara langsung:

  • Memiliki 3 tabel:Client1, Client2, Client3 dengan semua indeks, batasan, dan pemicu, dll
  • Gunakan sinonim untuk menyembunyikan tabel asli misal Client, ClientOld, ClientToLoad
  • Untuk membuat tabel baru, Anda memotong/menulis ke "ClientToLoad"
  • Kemudian Anda DROP dan BUAT sinonimnya dalam suatu transaksi sehingga
    • Klien -> apa itu ClientToLoad
    • ClientOld -> apa itu Klien
    • ClientToLoad -> apa itu ClientOld

Anda dapat menggunakan SELECT base_object_name FROM sys.synonyms WHERE name = 'Client' untuk mencari tahu apa tipuan saat ini

Ini berfungsi pada semua edisi SQL Server:cara lain adalah "pengalihan partisi" yang memerlukan edisi perusahaan



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. bagaimana cara membuat hubungan kunci asing pada data yang didistribusikan secara fisik?

  2. Tidak dapat memulai server sql dalam mode pengguna tunggal

  3. Cara mengembalikan nomor grup tambahan per grup dalam SQL

  4. Mempermudah kinerja SQL Server

  5. Menggunakan output untuk mengatur variabel dalam pernyataan gabungan