سؤال

لدي بعض البرامج النصية PHP CLI التي تعمل لفترة طويلة (24 ساعة بالإضافة إلى) وعلى الرغم من أنها تقوم بتكاليف العادية لدي بعض المشاكل مع المعاملات الأيتام - ربما بسبب البرامج النصية تعطل.

كان الحل الخاص بي هو إنشاء المعاملة على النحو التالي - لقد كان قبل عام أنني أبحث في هذا ولا يمكن أن نتذكر تماما الأسباب الدقيقة لهذه الإعدادات ولكن يبدو أنها حل بعض المشاكل مع قاعدة البيانات.

$ dbh= ibase_connect ($ dbhost، dbuser $ dbuser، dbpass $)؛ $ trans= ibase_trans (ibase_write + ibase_committed + ibase_rec_version + ibase_wait، dbh $؛ قمت الآن بالترقية الآن إلى PHP 5.3.5 ووجدت أن خط IBASE_TRANS يتسبب في خطأ تجزئة. في صفحة PHP IBase_Trans هناك ملاحظة:

"تم تغيير سلوك هذه الوظيفة في PHP 5.0.0. لن تتم إرجاع المكالمة الأولى إلى ibase_Trans () المعاملة الافتراضية للاتصال."

لذلك سؤالي هو ما إذا كان بإمكاني تعيين وسيطات المعاملة للحصول على المعاملة الافتراضية ... سؤال ثانوي، سواء كنت أفتقد تماما النقطة في محاولة القيام بذلك على أي حال!

شكرا

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

المحلول

يجب أن لا تعمل مع المعاملة الافتراضية.

حدد معاملتك كفلاة: giveacodicetagpre.

بعد تشغيل استفسارك: giveacodicetagpre.

أو يمكنك استخدام IBase_Prepare & Ibase_Execute.

بعد ذلك، اتصل giveacodicetagpre.

أو giveacodicetagpre.

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