Mengubah Urutan Kolom dalam Tabel

Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru Azure SQL Database Azure SQL Managed InstanceAnalytics Platform System (PDW)

Anda dapat mengubah urutan kolom di Designer Tabel di SQL Server Management Studio (SSMS). Secara default, mekanisme keamanan blok SSMS mengubah urutan kolom. Meskipun tidak disarankan, Anda dapat mengubah urutan kolom dalam tabel dengan membuat ulang tabel.

Menambahkan kolom ke tabel secara default menambahkannya ke akhir tabel, seperti yang disarankan.

Rekomendasi

Praktik terbaik dengan urutan kolom tabel:

  • Untuk mengubah urutan kolom yang ditampilkan dalam kumpulan hasil, laporan, atau aplikasi, gunakan urutan kolom dalam pernyataan SELECT (Transact-SQL ). Selalu tentukan kolom menurut nama dalam kueri dan aplikasi Anda dalam urutan yang Anda inginkan untuk muncul.
  • Jangan gunakan SELECT * dalam aplikasi. Kolom yang ditambahkan atau dihapus dapat menyebabkan perilaku atau kesalahan yang tidak terduga dalam aplikasi.
  • Tambahkan kolom baru ke akhir tabel.

Perhatian

Mengubah urutan kolom tabel dapat memengaruhi kode dan aplikasi yang bergantung pada urutan kolom tertentu. Ini termasuk kueri, tampilan, prosedur tersimpan, fungsi yang ditentukan pengguna, dan aplikasi klien. Pertimbangkan dengan cermat setiap perubahan yang ingin Anda lakukan pada urutan kolom.

Menggunakan SQL Server Management Studio

Mengubah urutan kolom

Meskipun tidak disarankan, Anda dapat mengubah urutan kolom dalam tabel menggunakan SQL Server Management Studio (SSMS). Ini memerlukan pembuatan ulang tabel.

Penting

Selalu gunakan versi terbaru SQL Server Management Studio (SSMS).

  1. Di Object Explorer, klik kanan tabel dengan kolom yang ingin Anda urus ulang dan pilih Desain.

  2. Pilih kotak di sebelah kiri nama kolom yang ingin Anda urus ulang.

  3. Seret kolom ke lokasi lain di dalam tabel.

Anda mungkin diblokir membuat perubahan ini dengan fitur keamanan penting dari SSMS, yang dikontrol oleh pengaturan Cegah penyimpanan perubahan yang memerlukan pembuatan ulang tabel. Pengaturan ini diaktifkan untuk mencegah penurunan/pembuatan ulang tabel yang tidak disengaja melalui dialog SSMS, yang mungkin mengganggu dan mengakibatkan hilangnya metadata atau izin. Untuk informasi selengkapnya, lihat Pesan kesalahan "Menyimpan perubahan tidak diizinkan" di SQL Server Management Directory. Sebagai gantinya, disarankan agar Anda menjalankan jenis perubahan ini, dengan kesadaran penuh tentang dampaknya, melalui langkah-langkah T-SQL yang mempertangungjawabkan izin dan metadata.

Perhatian

Membuat ulang tabel akan memblokir akses bersamaan ke tabel untuk pengguna dan aplikasi lain. Untuk tabel besar, ini bisa memerlukan durasi yang lama dan sejumlah besar ruang log transaksi.

Menggunakan Transact-SQL

Mengubah urutan kolom tidak didukung menggunakan pernyataan Transact-SQL. Tabel harus dihilangkan dan dibuat ulang untuk mengubah urutan kolom.

Keterangan

Untuk mengkueri kolom yang sudah ada, gunakan tampilan katalog objek sys.columns .

Langkah berikutnya