ডাটাবেসের ক্ষেত্রে রেফ্রেশ এবং মার্জ মানে কী?


94

আমি কৌতূহলী এবং এই উত্তরটি দ্রুত খুঁজে পাওয়া দরকার। গুগল খুব একটা সাহায্য করবে না।

জাভা পার্সেস্টন এপিআই-এ এই বৈশিষ্ট্যগুলি রয়েছে যা সম্পর্কিত সত্তাগুলিতে ক্যাসকেড পরিচালনার কাঠামোকে বলে:

CascadeType.PERSIST
CascadeType.DELETE
CascadeType.MERGE
CascadeType.REFRESH

আমি জানি প্রথম দুটি অর্থ কী: যখন আমি অবজেক্ট এ-এর বি থাকি, তখনও বিটিকে অবিরত রাখি, এবং আমি যখন এটিকে মুছি, তখন বিটিকেও মুছুন।

তবে অন্য দু'জন কী অর্জন করেন তা আমি কোনও ধারণা করতে পারি না। সাহায্য?

উত্তর:


80

রিফ্রেশ মানে "ডাটাবেস থেকে রাষ্ট্রের যে কোনও পরিবর্তন আমার প্রতিনিধিত্বতে টানুন"। এটি ক্যাসকেডিং সহজ; এর অর্থ এটি সম্পর্কিত যে সমস্ত সত্তা রিফ্রেশ।

মার্জ এর অর্থ এমন জটিল কিছু যা "সংরক্ষণ" -এর কাছাকাছি চলে আসে তবে "এই বিচ্ছিন্ন সত্তাকে আবার পরিচালিত স্থিতিতে ফিরিয়ে দেয় এবং এর রাষ্ট্রীয় পরিবর্তনগুলি সংরক্ষণ করে" এর মতো; ক্যাসকেডিংয়ের অর্থ হ'ল সমস্ত সম্পর্কিত সংস্থাগুলি একইভাবে পিছনে ফিরে আসে এবং আপনি যে ব্যবস্থাপনাপূর্ণ সত্তা হ্যান্ডেল থেকে ফিরে আসেন .merge()তার সাথে সম্পর্কিত সমস্ত পরিচালিত সত্তা রয়েছে।

সম্পর্কিত ডক্সের একটি উদাহরণের সাথে লিঙ্ক করুন


4
ডিফল্ট কী (যদি আমরা কোনও ক্যাসকেডটাইপ সেট না করি), এবং সেটটি সবচেয়ে বুদ্ধিমান / সাধারণ কোনটি?
রোসদী কাসিম

@ রসদি কাসিম: CascadeTypeখালি অ্যারেতে খেলাপি ।
ব্যবহারকারী 1438038

@ চাওস তাই পিতামাতাকে আপডেট / রিফ্রেশ করা হলে ডেটাবেজে কী আছে তা মেলানোর জন্য বাচ্চাদের আপডেট করুন রিফ্রেশ। মার্জটি মূলত পিতামাতার সাথে শিশুদের সত্তাকে প্রতিবিম্বিত করতে ডেটাবেজে বাচ্চাদের আপডেট হওয়া ক্ষেত্রগুলিকে ওভাররাইট করে। সুতরাং উভয় ব্যবহার করা হয়, কি ঘটবে? আমি ধারণা করি আমি এটি ভুল বুঝেছি।
জর্ডান ম্যাকি

87

জেপিএ টীকাগুলি অনেকের কাছে বহু সম্পর্কের জন্য অর্থ :

  • সমস্ত - উত্স সত্তায় সম্পাদিত সমস্ত সম্ভাব্য ক্যাসকেডিং অপারেশনগুলি সংঘের টার্গেটে ক্যাসকেড করা হয়।
  • মার্জ - যদি উত্স সত্তাটি একত্রিত করা হয় তবে সংযুক্তির লক্ষ্যে মার্জটি ক্যাসকেড করা হয়।
  • পার্সিস্ট - যদি উত্স সত্তা অব্যাহত থাকে, তবে অবিশ্বাস্য সংস্থার টার্গেটে ক্যাসকেড করা হয়।
  • রিফ্রেশ - উত্স সত্তাকে রিফ্রেশ করা হলে রিফ্রেশটি সমিতির লক্ষ্যবস্তুতে ক্যাসকেড করা হয়।
  • সরান - উত্স সত্তা অপসারণ করা হলে, সমিতির লক্ষ্য এছাড়াও সরানো হয়।

আমি নিজে এগুলিকে এইভাবে দেখি (আরও পাঠযোগ্য):

  • মার্জ - বিদ্যমান বস্তুর জন্য, আমার বস্তুর ডেটার সাথে টেবিলের বিদ্যমান ডেটাটি মার্জ করতে। (ডাটাবেসে সিঙ্ক)
  • PERSIST - ডাটাবেসে অবজেক্ট থেকে নতুন রেকর্ড তৈরি করে।
  • রিফ্রেশ - অবজেক্টের ডেটা রিফ্রেশ করা। সম্ভবত ডাটাবেসটিতে একটি পরিবর্তন হয়েছে যা সিঙ্ক করতে হবে। (ডাটাবেস থেকে সিঙ্ক)
  • সরান - ভাল, মুছে ফেলুন।

4
টীকাগুলির জাভাদোক আমার পক্ষে কিছুই পরিষ্কার করেনি। উত্তর করার জন্য ধন্যবাদ!
আন্দ্রে চেল্লা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.