Saya mencoba membuat server tertaut pada SQL Server 2014 servername\instancename
menggunakan panggilan berikut:
EXEC master.dbo.sp_addlinkedserver
@server = N'servername\instancename',
@srvproduct=N'SQL Server'
Saya mendapatkan kesalahan:
Msg 15028, Level 16, State 1, Procedure sp_addlinkedserver, Line 82
The server 'servername\instancename' already exists.
Ini berfungsi dengan baik di SQL Server 2005, dan menurut MSDN ,
Server tertaut tidak harus menjadi contoh lain dari SQL Server,
Jadi saya tidak yakin apa yang berubah di versi terbaru yang melarang ini. Menggunakan UI menghasilkan pesan serupa:
Anda tidak dapat membuat SQL Server lokal sebagai server tertaut.
Saya mengerti bahwa ini adalah hal yang aneh untuk diminta, tetapi untuk mendukung beberapa kode warisan yang berfungsi pada tahun 2005 (dan dulunya pada contoh terpisah). Dokumentasi menyatakan bahwa itu harus bekerja, tetapi tidak. Apakah ada cara untuk membuatnya berfungsi pada tahun 2014, atau apakah saya harus memodifikasi kode yang mendasarinya?
sumber
Jawaban:
Ternyata saya bisa membuatnya bekerja dengan parameter yang berbeda.
sumber
Alih-alih berurusan dengan referensi server tertaut di dalam kode Anda, Anda mungkin ingin mempertimbangkan investasi kode satu kali yang melibatkan penggunaan sinonim di lokasi mana pun saat ini Anda memiliki server tertaut.
Jadi alih-alih:
Anda memiliki sinonim:
Maka kode Anda cukup:
Kemudian jika Anda memiliki objek yang dipindahkan ke server yang berbeda, Anda cukup menjatuhkan dan membuat kembali sinonim dan tidak harus menyentuh kode:
sumber
Jalankan Perintah ini - Anda akan dapat menggunakan server lokal sebagai server Tertaut tanpa memerlukan perubahan kode
sumber