আমি লক্ষ্য করেছি যে আপনি যখন কোনও লেনদেনের প্রতিরূপ সেট আপ করবেন তখন এসকিউএল সার্ভার ম্যানুয়ালটিতে পরিচয় পরিসীমা পরিচালনা সেট করবে। এর অর্থ হ'ল আমার সাবস্ক্রিপশন ডেটাবেজে, যখন আমি কোনও টেবিলে একটি নতুন রেকর্ড সন্নিবেশ করানোর চেষ্টা করি যার পিকে একটি পরিচয় কলাম হয়, এটি আমাকে ত্রুটি দেবে এবং বলবে যে এটি "1", "2 এর কোনও পিকে sertোকানোর চেষ্টা করেছিল? "," 3 "ইত্যাদি এটি কারণ গ্রাহকের সমস্ত পরিচয় কলামের বর্তমান পরিচয় মানটি প্রকাশকের উপরে থাকায় পরিবর্তে বীজ মানের (সাধারণত 1) পুনরায় সেট হয়ে যায়।
এসকিউএল সার্ভার কেন এটি করে তা আমি বুঝতে পেরেছি - আপনার গ্রাহক টেবিলটি কেবল পঠনযোগ্য হিসাবে ছেড়ে দেওয়ার কথা। যাইহোক, আমার পরিস্থিতিটি কিছুটা অপ্রচলিত - আমি আমার গ্রাহককে সময়ে সময়ে প্রতিলিপি দ্বারা আপডেট করি, সেই ডিবিটির তাত্ক্ষণিক ব্যাকআপ করি, তারপরে আমি গ্রাহককে কিছু আপডেট করতে চাই যা প্রকাশকের কাছে ফিরে যেতে হবে না, তারপরে যখন আমি আবার গ্রাহক আপডেট করতে যাই, আমি পূর্বের ব্যাকআপ থেকে এটির ডাটাবেসটি পুনরুদ্ধার করি এবং সর্বশেষ আপডেটগুলি টানছি। যেহেতু আমি এই আপডেটগুলির মধ্যে গ্রাহককে আপডেট করতে চাই ('যদি আপনি চান তবে' অস্থায়ী ডেল্টাস '), কাজ করার জন্য আমার পরিচয় কলাম দরকার এবং প্রতিলিপি করাতে 1 এ পুনরায় সেট করার দরকার নেই।
আমি আমার প্রকাশনার সেট আপ করার সময় স্বয়ংক্রিয় পরিচয় পরিসর পরিচালনা চালু করার চেষ্টা করেছি, তবে যখন আমি প্রকাশনায় একটি সারণী যুক্ত করার চেষ্টা করি তখন তা আমাকে নিম্নলিখিত ত্রুটি দেয়:
এমএসজি 21231, স্তর 16, রাজ্য 1, পদ্ধতি sp_MSrepl_addarticle, লাইন 2243
স্বয়ংক্রিয় পরিচয় পরিসীমা সমর্থন কেবলমাত্র প্রকাশনাগুলির জন্য দরকারী যা গ্রাহকদের আপডেট করার অনুমতি দেয়।
এই সমস্যাটি আমি কীভাবে পেতে পারি? আমি এসকিউএল সার্ভারের কাছে এই প্রতিলিপিটি এমনভাবে উপস্থাপন করতে চাই যা এটি কেবল গ্রাহক প্রান্তে কেবল পঠনযোগ্য ছিল কারণ আমি আপডেটগুলি তৈরির পরিকল্পনা করি না যা প্রকাশকের কাছে ফিরে যায় , তবে আমি অস্থায়ী আপডেট করতে চাই যা পরবর্তী প্রতিরূপের আগে মুছে ফেলা হবে।
আমি এও বিবেচনা করেছি যে স্ন্যাপশটের প্রতিলিপিটি আমার ব্যবহারের প্যাটার্নের জন্য লেনদেনের অনুলিপিকরণের চেয়ে আরও উপযুক্ত পদ্ধতি হতে পারে তবে সমস্যাটি হ'ল স্ন্যাপশটের প্রতিলিপিটির প্রতিটি একক আপডেটে পুরো ডার্ন ডিবি প্রেরণ করা প্রয়োজন ; যেহেতু আমি সর্বশেষ প্রতিলিপি পরে ডিবি-এর তাত্ক্ষণিক ব্যাকআপ নেওয়ার পরিকল্পনা করছি, প্রতিবার আমার পুরো ট্রান্সফার করার দরকার নেই; গতবারের থেকে কেবল পরিবর্তনগুলি।
Is there any way I can get round this problem?২০০q এবং তার বেশি বেকার সার্ভারের জন্য sys.sp_identitycolumnforreplication ব্যবহার করে আপনাকে পরিচয় কলাম সেট করতে হবে না । এমনকি আপনি যখন নিজের পরিচয় কলামটি প্রতিলিপি হিসাবে পরিবর্তন করবেন না তখন আপনার নিবন্ধগুলি পুনরায় ফটোশট করতে হবে না। জিইআইআই ব্যবহার করে এটি করবেন না।