Mengelola Kolom Identitas

Berlaku untuk:SQL ServerAzure SQL Managed Instance

Topik ini menjelaskan cara mengelola kolom identitas di SQL Server dengan menggunakan SQL Server Management Studio atau Transact-SQL. Ketika sisipan Pelanggan direplikasi kembali ke Penerbit, kolom identitas harus dikelola untuk menghindari penetapan nilai identitas yang sama di Pelanggan dan Penerbit. Replikasi dapat mengelola rentang identitas secara otomatis atau Anda dapat memilih untuk menangani manajemen rentang identitas secara manual. Untuk informasi tentang opsi manajemen rentang identitas yang disediakan oleh replikasi, lihat Mereplikasi Kolom Identitas.

Dalam Topik Ini

Sebelum Anda mulai

Rekomendasi

  • Saat menerbitkan tabel di lebih dari satu publikasi, Anda harus menentukan opsi manajemen rentang identitas yang sama untuk kedua publikasi. Untuk informasi selengkapnya, lihat "Menerbitkan Tabel di Lebih dari Satu Publikasi" di Menerbitkan Data dan Objek Database.

  • Untuk membuat nomor bertahap otomatis yang dapat digunakan dalam beberapa tabel atau yang dapat dipanggil dari aplikasi tanpa merujuk tabel apa pun, lihat Nomor Urutan.

Menggunakan SQL Server Management Studio

Tentukan opsi manajemen kolom identitas pada tab Properti dari kotak dialog Properti Artikel -<Artikel> dari Panduan Publikasi Baru. Untuk informasi selengkapnya tentang menggunakan panduan ini, lihat Membuat Publikasi. Di Wizard Publikasi Baru:

  • Jika Anda memilih Gabungkan publikasi atau Publikasi transaksional dengan memperbarui langganan di halaman Jenis Publikasi, pilih manajemen rentang identitas otomatis atau manual (otomatis, default, disarankan). Setelah tabel diterbitkan, properti tidak dapat dimodifikasi, tetapi properti terkait lainnya dapat dimodifikasi.

  • Jika Anda memilih jenis publikasi lainnya, manajemen rentang identitas harus diatur ke manual.

Ubah rentang identitas dan ambang batas pada tab Properti dari Artikel Properti -<Artikel>, yang tersedia dalam kotak dialog Properti Publikasi - <Publikasi>. Untuk informasi selengkapnya tentang mengakses kotak dialog ini, lihat Menampilkan dan Mengubah Properti Publikasi.

Untuk menentukan opsi manajemen kolom identitas

  1. Jika Publisher menjalankan versi SQL Server sebelum SQL Server 2005 (9.x), pada halaman Jenis Publikasi Wizard Publikasi Baru, pilih Gabungkan publikasi atau Publikasi transaksional dengan memperbarui langganan.

  2. Pada halaman Artikel , pilih tabel dengan kolom identitas.

  3. Klik Properti Artikel, lalu klik Atur Properti Artikel Tabel yang Disorot.

  4. Pada tab Properti dari kotak dialog Properti Artikel - <Artikel> , di bagian Manajemen Rentang Identitas, atur properti Kelola rentang identitas secara otomatis ke Otomatis atau Manual (untuk Penerbit yang menjalankan SQL Server 2005 (9.x) atau yang lebih baru), atau Benar atau Salah (untuk Penerbit yang menjalankan versi SQL Server sebelum SQL Server 2005 (9.x)).

  5. Jika Anda memilih Otomatis atau Benar di langkah 4, masukkan nilai untuk opsi dalam tabel berikut. Untuk informasi selengkapnya tentang cara pengaturan ini digunakan, lihat bagian "Menetapkan Rentang Identitas" di Mereplikasi Kolom Identitas.

    Opsi Nilai Deskripsi
    Ukuran rentang penerbit Nilai bilangan bulat untuk ukuran rentang (misalnya, 20000). Lihat bagian "Menetapkan Rentang Identitas" di Mereplikasi Kolom Identitas.
    Ukuran rentang pelanggan Nilai bilangan bulat untuk ukuran rentang (misalnya, 10000). Lihat bagian "Menetapkan Rentang Identitas" di Mereplikasi Kolom Identitas.
    Persentase ambang batas rentang Nilai bilangan bulat untuk ambang persen (misalnya, 90 setara dengan 90 persen). Persentase total nilai identitas yang digunakan pada simpul sebelum rentang identitas baru ditetapkan.



    Catatan: Nilai ini harus ditentukan, tetapi hanya digunakan oleh: Pelanggan yang menggunakan langganan pembaruan antrean; dan Pelanggan untuk menggabungkan publikasi yang menjalankan SQL Server Compact atau versi sebelumnya dari edisi SQL Server lainnya. Untuk informasi selengkapnya, lihat bagian "Menetapkan Rentang Identitas" di Mereplikasi Kolom Identitas.
    Nilai awal rentang berikutnya Nilai bilangan bulat. Baca-saja. Nilai di mana rentang berikutnya akan dimulai. Misalnya, jika rentang saat ini adalah 5001-6000, nilai ini akan menjadi 6001.
    Nilai identitas maksimum Nilai bilangan bulat. Baca-saja. Nilai terbesar untuk kolom identitas. Ditentukan oleh jenis data dasar kolom.
    Tahapan Nilai bilangan bulat. Baca-saja. Jumlah di mana jumlah dalam kolom identitas harus meningkat atau berkurang untuk setiap sisipan: biasanya diatur ke 1.
  6. Pilih OK.

Untuk mengubah rentang identitas dan ambang setelah tabel diterbitkan

  1. Pada halaman Artikel dari kotak dialog Properti Publikasi - <Publikasi> , pilih tabel dengan kolom identitas.

  2. Klik Properti Artikel, lalu klik Atur Properti Artikel Tabel yang Disorot.

  3. Pada tab Properti dari kotak dialog Properti Artikel - <Artikel> , di bagian Manajemen Rentang Identitas, masukkan nilai untuk satu atau beberapa properti berikut ini: Ukuran rentang penerbit, ukuran rentang Pelanggan, dan persentase ambang batas Rentang.

  4. Pilih OK.

  5. Klik OK pada kotak dialog Properti Publikasi - <Publikasi> .

Menggunakan T-SQL

Anda dapat menggunakan prosedur tersimpan replikasi untuk menentukan opsi manajemen rentang identitas saat artikel dibuat.

Untuk mengaktifkan manajemen rentang identitas otomatis saat menentukan artikel untuk publikasi transaksi

  1. Di Publisher pada database publikasi, jalankan sp_addarticle. Jika tabel sumber yang diterbitkan memiliki kolom identitas, tentukan nilai otomatis untuk @identityrangemanagementoption, rentang nilai identitas yang ditetapkan ke Penerbit untuk @pub_identity_range, rentang nilai identitas yang ditetapkan ke setiap Pelanggan untuk @identity_range, dan persentase total nilai identitas yang digunakan sebelum rentang identitas baru ditetapkan untuk @threshold. Untuk informasi selengkapnya tentang mendefinisikan artikel, lihat Menentukan Artikel.

    Catatan

    Pastikan bahwa jenis data kolom identitas cukup besar untuk mendukung rentang total identitas yang ditetapkan ke semua Pelanggan.

Untuk menonaktifkan manajemen rentang identitas otomatis saat menentukan artikel untuk publikasi transaksional

  1. Di Publisher pada database publikasi, jalankan sp_addarticle. Tentukan nilai manual untuk @identityrangemanagementoption. Untuk informasi selengkapnya tentang mendefinisikan artikel, lihat Menentukan Artikel.

  2. Tetapkan rentang ke kolom artikel identitas di Pelanggan untuk menghindari menghasilkan konflik untuk memperbarui Pelanggan. Untuk informasi selengkapnya, lihat bagian tentang menetapkan rentang untuk manajemen rentang identitas manual dalam topik Mereplikasi Kolom Identitas.

Untuk mengaktifkan manajemen rentang identitas otomatis saat menentukan artikel untuk publikasi gabungan

  1. Di Publisher pada database publikasi, jalankan sp_addmergearticle. Jika tabel sumber yang diterbitkan memiliki kolom identitas, tentukan nilai otomatis untuk @identityrangemanagementoption, rentang nilai identitas yang ditetapkan ke langganan server untuk @pub_identity_range, rentang nilai identitas yang ditetapkan ke Penerbit dan setiap langganan klien untuk @identity_range, dan persentase total nilai identitas yang digunakan sebelum rentang identitas baru ditetapkan untuk @threshold. Untuk informasi selengkapnya tentang kapan rentang identitas baru ditetapkan, lihat Menetapkan Rentang Identitas dalam topik Mereplikasi Kolom Identitas. Untuk informasi selengkapnya tentang mendefinisikan artikel, lihat Menentukan Artikel.

    Catatan

    Pastikan bahwa jenis data kolom identitas cukup besar untuk mendukung rentang total identitas yang ditetapkan ke semua Pelanggan, terutama untuk Pelanggan dengan langganan server.

Untuk menonaktifkan manajemen rentang identitas otomatis saat menentukan artikel untuk publikasi gabungan

  1. Di Publisher pada database publikasi, jalankan sp_addmergearticle. Tentukan salah satu nilai berikut untuk @identityrangemanagementoption:

    • manual - Rentang identitas harus ditetapkan secara manual untuk memperbarui Pelanggan.

    • none - Kolom identitas di Publisher tidak akan didefinisikan sebagai kolom identitas di Pelanggan.

    Untuk informasi selengkapnya tentang mendefinisikan artikel, lihat Menentukan Artikel.

  2. Tetapkan rentang ke kolom artikel identitas di Pelanggan untuk menghindari menghasilkan konflik untuk memperbarui Pelanggan.

Untuk mengubah pengaturan manajemen rentang identitas otomatis untuk artikel yang sudah ada dalam rekam jepret atau publikasi transaksi

  1. Di Publisher pada database publikasi, jalankan sp_helparticle dan perhatikan nilai identityrangemanagementoption dalam tataan hasil. Jika nilai ini adalah 0, manajemen rentang identitas otomatis tidak diaktifkan.

  2. Jika nilai identityrangemanagementoption dalam tataan hasil adalah 1, ubah pengaturan sebagai berikut:

    • Untuk mengubah rentang identitas yang ditetapkan, jalankan sp_changearticle di Publisher pada database publikasi. Tentukan nilai identity_range atau pub_identity_range untuk @property dan nilai rentang baru untuk @value.

    • Untuk mengubah ambang batas di mana rentang baru ditetapkan, jalankan sp_changearticle di Publisher pada database publikasi. Tentukan nilai ambang batas untuk @property dan nilai ambang batas baru untuk @value.

Untuk mengubah pengaturan manajemen rentang identitas otomatis untuk artikel yang sudah ada dalam publikasi gabungan

  1. Di Publisher pada database publikasi, jalankan sp_helpmergearticle dan perhatikan nilai identity_support dalam tataan hasil. Jika nilai ini adalah 0, manajemen rentang identitas otomatis tidak diaktifkan.

  2. Jika nilai identity_support dalam tataan hasil adalah 1, ubah pengaturan sebagai berikut:

    • Untuk mengubah rentang identitas yang ditetapkan, jalankan sp_changemergearticle di Publisher pada database publikasi. Tentukan nilai identity_range atau pub_identity_range untuk @property dan nilai rentang baru untuk @value.

    • Untuk mengubah ambang batas di mana rentang baru ditetapkan, jalankan sp_changemergearticle di Publisher pada database publikasi. Tentukan nilai ambang batas untuk @property dan nilai ambang batas baru untuk @value. Untuk informasi selengkapnya tentang kapan rentang identitas baru ditetapkan, lihat Menetapkan Rentang Identitas dalam topik Mereplikasi Kolom Identitas.

    • Untuk menonaktifkan manajemen rentang identitas otomatis, jalankan sp_changemergearticle di Publisher pada database publikasi. Tentukan nilai identityrangemanagementoption untuk @property dan manual atau tidak ada untuk @value.

Lihat Juga

Replikasi Transaksional Peer-to-Peer
Konsep Prosedur Tersimpan Sistem Replikasi
Mereplikasi Kolom Identitas