যদিও আমার উত্তরটি রেমাসের মতো দীর্ঘ নয়, তবে আমি এটি সত্যিই ভাল সমাধান হিসাবে পেয়েছি। আমি এটি এখনও উত্পাদনে সেট আপ করতে পারি নি, তাই ওয়াইএমএমভি *।
Liquibase
মূলত এটি একটি এক্সএমএল ফাইল যেখানে আপনি এক্সএমএল ফাইলের অভ্যন্তরে নতুন উপাদান হিসাবে আপনার ডাটাবেজে স্কিমা পরিবর্তন করেন। উদাহরণ স্বরূপ:
<createTable tableName="department">
<column name="id" type="int">
<constraints primaryKey="true" nullable="false"/>
</column>
এটিতে সম্পূর্ণরূপে মাংসলগ্ন বাক্য গঠন রয়েছে যাতে আপনি আপনার ডাটাবেসে যা কিছু করতে চান তা করতে পারেন।
আপনি আপনার লিকুইবেস ইনস্টলেশনটিতে নির্দিষ্ট করে দিতে পারেন যে আপনি কোন ডেটাবেসটির সংস্করণ তৈরি করতে চান। তারপরে আপনি অন্তর্ভুক্ত জাভা এক্সিকিউটেবল (জার ফাইল) সহ .xML "চালান"। এটি আপনার ডাটাবেসে এক্সএমএল-এ উল্লিখিত পরিবর্তনগুলি মূলত পুনরায় তৈরি করে।
আসল কিকারটি হ'ল আপনি এই এক্সএমএল ফাইলটিকে আপনার কোডের মতো একই সংস্করণযুক্ত ফোল্ডারে সঞ্চয় করেন। আমার উদাহরণস্বরূপ যে গিট ছিল। আমার প্রজেক্ট ফোল্ডারে এই এক্সএমএল ফাইলটি ছিল (/.git হিসাবে একই স্তরের) এবং তারপরে আমি যখনই শাখাগুলি স্যুইচ করেছিলাম তখন এক্সএমএল ফাইলটি সেই শাখার সংস্করণে পরিবর্তিত হবে এবং আমি .jar ফাইলটি চালাতাম এবং আমার ডাটাবেসটি এখন সেই শাখাকে প্রতিবিম্বিত করবে।
* দ্রষ্টব্য: আমি জাভাটি এসকিউএল সার্ভারের সাথে সংযোগ করতে সমস্যা করায় আমি বাস্তবায়ন শেষ করিনি। কিছু জেডিবিসি ড্রাইভার এবং এ জাতীয় দরকার এবং আমি মুডে ছিলাম না। সুতরাং, আপনার মাইলেজ বিভিন্ন হতে পারে।