Access tidak mengenali kolom identitas dalam tabel SQL Server tertaut

Terakhir Diperbarui: 23 Januari 2020

MASALAH

Saat membuat link ke tabel di SQL Server yang memiliki kolom identitas, Access biasanya akan mengidentifikasi kolom tersebut sebagai kolom AutoNumber.

Memperlihatkan bahwa kolom identitas diidentifikasi sebagai bidang AutoNumber

Dalam Build saluran bulanan saat ini (16.0.12325. *) versi 1912 dari Office 365 dan Office 2016/2019, kolom identitas tidak diidentifikasi dengan benar, dan akan dianggap hanya sebagai angka.

Kolom identitas tidak diidentifikasi sebagai AutoNumber dengan benar

Ini akan terjadi ketika membuat link baru melalui antarmuka pengguna atau melalui kode, tapi hanya untuk link baru.  Link yang sudah ada tidak akan terpengaruh, kecuali link refresh.

Access menggunakan identifikasi yang tepat dari kolom identitas untuk sejumlah tujuan, sehingga hal ini dapat berdampak pada aplikasi dalam beberapa cara.

Misalnya, kolom identitas biasanya digunakan untuk mengidentifikasi catatan yang baru ditambahkan.  Saat kolom identitas tidak digunakan, Access mungkin tidak dapat menemukan baris yang baru ditambahkan dengan benar, yang akan menyebabkan bidang dalam baris tersebut ditampilkan sebagai #Deleted.

Baris memperlihatkan bidang yang mengatakan terhapus

Anda mungkin melihat masalah yang sama ketika menggunakan properti RecordSet. LastModified untuk mengambil nilai untuk catatan yang terakhir ditambahkan. Kode berikut:

Set rst = CurrentDb().OpenRecordset("tblWithIdentityColumn")

rst.AddNew
rst!CompanyName = "Contoso"
rst.Update

rst.Bookmark = rst.LastModified
MsgBox rst!CompanyName

Mungkin mengakibatkan kesalahan 3167:

Kesalahan yang menunjukkan catatan tersebut dihapus.

Dalam kedua kasus, rekaman akan berhasil ditambahkan, tetapi Access akan gagal menemukannya dengan sukses.

Access juga akan mengabaikan upaya untuk memperbarui kolom identitas secara langsung. Namun, dalam Build ini memungkinkan upaya tetapi gagal dan menghasilkan pesan kesalahan:

[SQL Server] Tidak dapat menyisipkan nilai eksplisit untuk kolom identitas dalam tabel ' tblOrders ' ketika IDENTITY_INSERT diatur ke nonaktif. (#544)

STATUS: DIPERBAIKI

Perbaikan untuk masalah ini sekarang tersedia untuk versi 1912.  Anda mungkin perlu secara eksplisit memaksa pembaruan untuk menerima perbaikan tersebut.  Nomor Build tetap harus 12325,20344.

Jika Anda menggunakan Insiders Slow (versi 2001) atau Insider Fast (versi 2002). Perbaikan belum terkirim di saluran tersebut, jadi Anda mungkin ingin memindahkan ke saluran bulanan.

Catatan: Setelah Anda mengubah versi, Anda harus me-refresh link yang terpengaruh untuk memastikan bahwa mereka berperilaku dengan benar lagi.

Ikon Pakar (otak, gerigi)

Tanyakan kepada para ahli

Terhubung dengan para ahli, diskusikan praktik terbaik, pembaruan, dan berita terkini Excel, serta baca blog kami.

Komunitas Teknologi Microsoft

Ikon Komunitas

Dapatkan bantuan dalam komunitas

Ajukan pertanyaan dan temukan solusi dari Agen Dukungan, MVP, Teknisi, dan pengguna Excel lainnya.

Forum Office di Answers

Ikon permintaan fitur (bola lampu, ide)

Sarankan fitur baru

Kami sangat senang membaca saran dan umpan balik Anda! Bagikan pendapat Anda. Kami mendengarkan.

UserVoice untuk Office

Lihat Juga

Perbaikan atau solusi untuk masalah terbaru di Access

Kembangkan keterampilan Office Anda
Jelajahi pelatihan
Dapatkan fitur baru terlebih dahulu
Gabung ke Office Insiders

Apakah informasi ini bermanfaat?

Terima kasih atas umpan balik Anda!

Terima kasih atas umpan balik Anda! Sepertinya menghubungkan Anda ke salah satu agen dukungan Office kami akan sangat membantu.

×