Mengubah kolom

Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)

Anda dapat mengubah jenis data kolom di SQL Server dengan menggunakan SQL Server Management Studio atau Transact-SQL.

Peringatan

Memodifikasi tipe data kolom yang sudah berisi data dapat mengakibatkan hilangnya data secara permanen saat data yang ada dikonversi ke jenis baru. Selain itu, kode dan aplikasi yang bergantung pada kolom yang dimodifikasi mungkin gagal. Ini termasuk kueri, tampilan, prosedur tersimpan, fungsi yang ditentukan pengguna, dan aplikasi klien. Perhatikan bahwa kegagalan ini akan berskala. Misalnya, prosedur tersimpan yang memanggil fungsi yang ditentukan pengguna yang bergantung pada kolom yang dimodifikasi mungkin gagal. Pertimbangkan dengan cermat setiap perubahan yang ingin Anda buat pada kolom sebelum membuatnya.

Izin

Memerlukan izin UBAH pada tabel.

Menggunakan SQL Server Management Studio (SSMS)

Untuk mengubah jenis data kolom menggunakan SSMS

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

  2. Pilih kolom yang ingin Anda ubah tipe datanya.

  3. Di tab Properti Kolom, pilih sel kisi untuk properti Tipe Data dan pilih tipe data baru dari daftar drop-down.

  4. Pada menu File , pilih Simpannama tabel.

Catatan

Saat Anda mengubah tipe data kolom, Table Designer menerapkan panjang default tipe data yang Anda pilih, bahkan jika Anda telah menentukan yang lain. Selalu atur panjang jenis data untuk ke nilai yang diinginkan setelah menentukan jenis data.

Peringatan

Jika Anda mencoba mengubah tipe data kolom yang berkaitan dengan tabel lain, Perancang Tabel meminta Anda untuk mengonfirmasi bahwa perubahan harus dilakukan pada kolom di tabel lain juga.

Menggunakan Transact-SQL

Untuk mengubah jenis data kolom menggunakan Transact-SQL

  1. Di Object Explorer, sambungkan ke instans Mesin Database.

  2. Pada bilah Standar, pilih Kueri Baru.

  3. Salin dan tempel contoh berikut ke dalam jendela kueri dan pilih Jalankan.

    CREATE TABLE dbo.doc_exy (column_a INT );  
    GO  
    INSERT INTO dbo.doc_exy (column_a) VALUES (10);  
    GO  
    ALTER TABLE dbo.doc_exy ALTER COLUMN column_a DECIMAL (5, 2);  
    GO  
    

Langkah berikutnya