سؤال

صباح الخير

لدي سؤال بخصوص القيم الافتراضية والقيم NULL في Sybase ASE 12. لجعل قصة طويلة قصيرة: لقد ورثت قاعدة بيانات Sybase قديمة جدًا بالإضافة إلى الواجهة الأمامية لـ PowerBuilder التي توجد فوقها. يحتوي أحد الجداول المعنية على عدة أعمدة لها قيم افتراضية بالإضافة إلى القيد غير الفارغ. وبالتالي ، عندما لا يتم توفير أي قيمة (ملاحظة: ليست قيمة فارغة) ، ينشئ PowerBuilder عبارة insert / update المناسبة ولا يمرر قيمة لهذه الحقول الفارغة ، والتي يتم بعد ذلك تعيين القيمة الافتراضية لها تلقائيًا بواسطة قاعدة البيانات. مرق.

المشكلة الآن: تقرر إضافة تدقيق إلى التطبيق بأكمله عبر الواجهة الأمامية (فكرة سيئة ، أعرف ، ولكن ليس خياري). تمت كتابة دالة لتلخيص عملية التدقيق ولكن المشكلة تنشأ من حقيقة أنها لا ترى أي إدخال للمستخدم كقيم فارغة وتقوم بإنشاء بيان إدراج في جدول التدقيق (يتم تعريفه أيضًا بقيد غير فارغ) ، مما يوفر القيمة الحرفية NULL لهذه الأعمدة الفارغة. ثم يرى Sybase الحرف NULL ، وكما تعلمون جميعًا ، يتعامل مع NULL كقيمة وليس "بدون إدخال".

إذن ، السؤال: هل من الممكن تعيين إدخال NULL افتراضيًا على القيم الافتراضية من جانب قاعدة البيانات؟ لقد فكرت في المشغلات ، لكنني آمل أن أكون محظوظًا وسيكون هناك شكل من أشكال البناء على مستوى الجدول يمكنني الاستفادة منه.

شكرًا لك على وقتك واهتمامك

المراجع:
مثال جيد للقضية المعنية
http://www.sybaseteam .com / null-not-nothing-different-between-null-nothing-sybase-t-390.html

انظر الجدول 7-1 ، في منتصف الصفحة.
http : //manuals.sybase.com/onlinebooks/group-as/asg1250e/sqlug/@ebt-link؛ pt= 20741؟ target=٪ 25N٪ 15_19279_START_RESTART_N٪ 25

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

المحلول

أعتقد أنك بحاجة إلى جعل وظيفة التدقيق أكثر ذكاءً.يجب فقط تسجيل الأعمدة التي قام المستخدم بتغييرها.من السهل تحديد هذا باستخدام رمز الترقيم العام.يمكنك تكرار الأعمدة باستخدام شكل رمز الترقيم العام الذي يأخذ عددًا صحيحًا من رقم العمود.

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