كيف تجعل المحمولة طراز قاعدة البيانات الخاصة بك في للكيك؟

StackOverflow https://stackoverflow.com/questions/603578

سؤال

وأنا لست على دراية جدا مع كعكة .. حتى هنا أسئلتي .. إننا نعمل على تطوير التطبيق على الخلية، ولكن قد تحتاج في نهاية المطاف إلى نشر إلى MSSQL أو أوراكل. كيف يمكننا التأكد من أن لن يكون لدينا مشاكل غريبة مع المفاتيح الأساسية لدينا؟ في الخلية هم أعمدة AUTO INCREMENT لكن IIRC في أوراكل تحتاج إلى استخدام تسلسل ... هل هناك طريقة لجعل هذا التغيير شفافة؟ أنا على التفكير ذلك؟

هل لديها تجربة مع التحول البائعين قاعدة البيانات على التطبيق للكيك؟ أي مؤشرات أو أشياء للحفاظ على العين ل؟

هل كانت مفيدة؟

المحلول

في ملف قاعدة البيانات التكوين كعكة تختار السائق الخاص بك (انظر HTTP: // كتاب .cakephp.org / عرض / 40 / قاعدة بيانات التكوين ). ثم، إذا قمت بتعيين PK الخاص بك (الذي سيكون أيضا العمود A_I إذا باستخدام ماي) مع id FIELDNAME، وكعكة التعامل مع الإدراج AUTO_INCREMENT تلقائيا. وأود أن نفترض. (ملحوظة: كعكة لم يحاكم ث / شيء آخر) أن كعكة سوف تأخذ الرعاية من الأعمدة A_I في شيء مثل أوراكل

والكيك يستخدم الخاصة DB طبقة تجريد - ولكن تغطية تجريدات شملت لا بأس به، وسوف تؤدي على النحو المحدد (أي أنه سوف تعامل مع السيارات الخاصة بك زيادة الاشياء بالنسبة لك)

.

وباختصار، ربما كنت overthinking. قال ذلك، وأود أن همية حتى التطبيق كعكة قليلا، ثم حاول قواعد البيانات التحول وراء ذلك (تغيير التكوين ديسيبل والتطبيق يجب التبديل التلقائى أكثر من ذلك).

وHTH، ترافيس

نصائح أخرى

والممارسات التالية بجهد كبير بالنسبة لي

وأنا استخدم المخططات كعكة (أنا أميل لاقامة 1 ملف المخطط لكل مجموعة من النماذج. I.E. المستخدم، دور، الملف قد يكون كل في ملف واحد UsersSchema)

وأيضا إلقاء نظرة على استخدام debuggable.com FixturesShell - أنه يسمح لك لاستيراد التجهيزات حالة اختبار في قاعدة البيانات الحية. كبيرة لإنشاء تلك المجموعة الأولية من المستخدمين والأدوار من ملف المخطط.

وأيضا، إذا قمت بتعيين الحقل "معرف" إلى VARCHAR (36) بدلا من INT (#) كعكة سوف تستخدم أسلوب UUID معرف تلقائيا. هذا يعني أن لديك فرصة FAR FAR الأدنى من البيانات الخاصة بك بعد اصطدام قيمة id إذا كنت بحاجة إلى نقل البيانات إلى التطبيق أو ملقم آخر.

والتركيبات قذيفة أيضا لديه أداة سطر الأوامر لتوليد uuids (بحيث يمكنك إضافتها إلى سجلات $ ديك متغير في المباراة لإدراج الخ)

في ملخص - استخدم CakeSchema المخططات قذيفة، تركيبات قذيفة من debuggable.com وUUID القيم والهوية الخاصة بك ويجب أن يوفر لك أداة محمولة خلق بنية، أداة الإدراج البيانات المحمولة، وشكل الحقل معرف المحمولة <. / P>

http://github.com/felixge/debuggable -scraps / شجرة / fd0e5ad625cb21f5ba16e6b186821a5774089ac7 / للكيك / قذائف / التركيبات

http://api.cakephp.org/class/schema-shell

وتحتاج إلى استخدام "مخطط كعكة" لإدارة DB الخاص .. وهذا التعامل مع جميع الاشياء الخاصة DB عند إنشاء قاعدة البيانات الخاصة بك.

http://book.cakephp.org/view / 735 / توليد وباستخدام-مخطط ملفات

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top