Kesalahan: Perbandingan skema database menggunakan proyek skema dengan database Azure

Saya menggunakan proyek basis data untuk memelihara skema basis data. Perbandingan skema berfungsi sempurna dengan database lokal. Tetapi ketika saya terhubung ke database Azure dan membandingkannya dengan proyek skema, kesalahan berikut muncul.

Pengecualian tak terduga tertangkap selama populasi model target: Nilai tidak boleh nol. Nama parameter: katalogStamp

Saya telah mencoba membersihkan semua koneksi yang disimpan melalui HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\14.0\SSDT\ConnectionMruList

masukkan deskripsi gambar di sini

Bantuan apa pun akan dihargai. Terima kasih!


person Aruna    schedule 22.11.2017    source sumber
comment
Coba instal Visual Studio 2017 di komputer lain atau mesin virtual. Anda mungkin menemukannya telah diperbaiki pada Visual Studio 2017.   -  person Alberto Morillo    schedule 22.11.2017
comment
Ya. Anda benar. Ia bekerja pada tahun 2017   -  person Aruna    schedule 23.11.2017
comment
Aku senang bisa mengenal Aruna. Ini mungkin alasan bagus untuk melakukan upgrade.   -  person Alberto Morillo    schedule 23.11.2017
comment
Tepat. Sudah memulai konversi. Terima kasih lagi!   -  person Aruna    schedule 23.11.2017


Jawaban (3)


Coba instal Visual Studio 2017 di komputer lain atau mesin virtual. Ini telah diperbaiki pada Visual Studio 2017.

person Alberto Morillo    schedule 23.11.2017

Senang mengetahui bahwa ini telah diperbaiki di VS2017 tetapi bagi siapa pun yang menggunakan VS versi sebelumnya, yang ingin mengetahui penyebabnya, hal itu terjadi karena ketidakcocokan mode kompatibilitas dengan database. Saya melihat ini setelah Microsoft meningkatkan tingkat kompatibilitas database default di Azure tahun lalu (lihat https://azure.microsoft.com/en-gb/blog/default-compatibility-level-140-for-azure-sql-databases/)

Jika Anda masih menggunakan Visual Studio versi lama maka Anda dapat mengubah tingkat kompatibilitas menggunakan:

ALTER DATABASE [Database_Name] SET COMPATIBILITY_LEVEL = 120

Namun Anda harus terlebih dahulu memastikan bahwa perbedaan apa pun antara tingkat kompatibilitas tidak akan menimbulkan masalah bagi Anda, lihat; https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-database-transact-sql-compatibility-level

Anda dapat memeriksa tingkat kompatibilitas database Anda saat ini

SELECT name, compatibility_level FROM sys.databases 
person d219    schedule 27.02.2018
comment
Utas ini adalah anugerah dan jawaban ini sempurna. Penerapan dengan database VS 2015 ke Azure SQL memberi saya kesalahan. Azure SQL dibuat pada compatability_level 150. Saya mengubahnya menjadi compatability_level 120. Sekarang perbandingan dan penerapan skema VS2015 berfungsi! - person SherlockSpreadsheets; 29.12.2020

Coba ini

ALTER DATABASE [Database_Name] SET COMPATIBILITY_LEVEL = 120
person Aakash    schedule 07.12.2017