مقایسه دو پایگاه داده

البته اینجا خواننده‌یی نداره که این نوشته به دردش بخوره، این نوشته‌های هر هزار سال یکبار اینجوری، بیشتر برای اونایی که search می‌کنن و شاید برسن به اینجا. باشد که رستگار شوند.
اگه با پایگاه داده سر و کار داشته باشن، حتما براتون پیش می‌آد که دو تا نسخه داشته باشین که دیگه تفاوت‌هاشون از دست‌تون در رفته، یا اینکه scriptهایی که نگهداری کردین، اونقدر زیاد می‌شه و حتی گاهی متناقض که ترجیح بدین یکی بیاد راحت بگه بهتون اینا با هم چه فرقی دارن. یک Toolsی هست که روزگار من باهاش می‌چرخه و نون‌م رو از این راه در می‌آرم واقعا، به نام SQL Delta. البته فقط برای MS SQL Server کار می‌کنه و اگه ‌Oracle اینا کار کنین فایده‌یی نداره براتون.
این Tools هم بهتون تفاوت‌های ساختاری رو می‌گه و هم تفاوت‌های داده‌یی. بعد یه ‌script می‌ده که باهاش می‌تونین هر دو Data base رو یکی کنین. هر چند بهتره برای داده فقط ‌script بگیرین و قسمتی که برای update کردنِ داده است اجرا کنین. چون میاد همه‌ی FK ها رو پاک می‌کنه و دوباره می‌سازه. البته این کار رو Transactional می‌کنه، ولی خب ریسک‌ش بالاست. به خصوص اگه بین چند شهر در حال همسان‌سازی باشین که دیگه واویلا.
بعد یک نکته‌ی دیگه. MS SQL Server تقریبا از هر چیزی که به صورت Wizardی انجام می‌ده، یه script هم درست می‌کنه. اینه که هر کاری که با UI های شیلان پیلان انجام می‌شه، حتما می‌شه به صورت scriptی هم انجام داد. در نتیجه دستِ‌ آدم خیلی بازِ که بتونه همه چیز رو اون شکلی انجام بده که دوست داره و نتیجه بگیره.
فعلا من به صورت یکی که حوصله‌ی فکر کردن نداره، درگیرِ XML توی SQL Server 2005 هستم. بحث جالبیِ بیچوره. (اگه حوصله کرده باشین تا اینجا خونده باشین، باید بگم XML همین Feed جان رو درست می‌کنه مثلا.) ولی من اصلا ذهنم متمرکز نیست که بفهممش. ولی فهمیدم حتما یه چیزِ درست درمون ازش می‌نویسم که به درد یکی بخوره.
همون دیگه.

0 comments: