سؤال

حسنًا ، الآن بعد أن حصلت أخيرًا على مواد ODBC الغبية التي تم تكوينها ، أخذت ملف Schema.rb الذي ألقيته من قاعدة بيانات postgres وفعلت أ db:schema:load عليه في مشروع Rails الذي تم تكوينه لخادم SQL.

حسنًا ، تقوم بإعداد جميع المخططات في قاعدة بيانات SQL Server باستثناء التفاصيل البسيطة: لا يتم إنشاء مفاتيح أجنبية.

لا يظهر أمر Rake أي أخطاء ويقول إنه يضيف مفاتيح أجنبية. لكنهم لا يضافون بالفعل. هذا هو آخر شيء من الأمر:

-- add_foreign_key("workhistoryform", "form", {:name=>"workhistoryform_form_rid_fkey", :column=>"form_rid", :primary_key=>"form_rid"})
   -> 0.0002s
-- initialize_schema_migrations_table()
   -> 0.0092s
-- assume_migrated_upto_version(0)
   -> 0.0942s
[earlz@earlzarch avp_msql_migrations]$

فما هي المشكلة؟ هل لا يعمل البرنامج المساعد الأجنبي في SQL Server؟ إذا لم أكن أتوقع رؤية خطأ أو شيء من هذا القبيل ...

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

المحلول

حسنًا ، لقد أصلحته. حسنا ، اخترقها على أي حال. لم يكن أجنبيه قد تم إنشاؤه بالفعل لدعم SQL Server ، ولكنه قريب بما فيه الكفاية من SQL_2003 أنه يعمل (ناقص إزالة المفاتيح الخارجية واكتشاف المخطط)

لقد أنشأت منشورًا عن ذلك على مدونتي الذي تم غليانه بشكل أساسي لإضافة A إلى قائمة المحولات وإنشاء محول جديد بسيط جدًا لخادم SQL (استخدم محول PostgreSQL كقالب). (تعديل الأحجار الكريمة الأجنبية)

نصائح أخرى

لقد أصلحت هذا بشكل صحيح وأرسلت طلب سحب إلى مؤلف أجنبي. في هذه الأثناء ، يمكنك استخدام الإصدار من مستودعتي: https://github.com/cjheath/foreigner

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