منزل
Top.Mail.Ru Yandeks.Metrika
المنتدى: "القواعد";
الأرشيف الحالي: 2002.07.25;
تنزيل: [xml.tar.bz2];

إلى

أخطاء تسلسل الخط في الإجراءات بموجب IB البحث عن فروع مماثلة


Boroda Oleg   (2002-07-05 10:50) [0]

السادة!

أخبرني ، إذا كان أي شخص يعرف في ما يحدث subj:

حدث تجاوز سعة حسابي أو القسمة على صفر.
النتوء الحسابي ، أو السعة العددية ، أو اقتطاع السلسلة.

بتعبير أدق ، ما يجب الانتباه إليه عند تسلسل السلاسل التي تتم معالجتها بواسطة الوظائف. أعلم أن حجم الصف الناتج يجب أن يكون على الأقل مجموع الصفوف المتسلسلة ، ولكن ماذا يمكن أن يكون؟ هل يمكن أن يكون هناك أي قيود لحجم السلسلة ، أو عدد السلاسل المتسلسلة؟ لماذا يمكن أن يحدث مثل هذا الخطأ عند استدعاء دالات ltrim أو rtrim ، حتى لو كانت واحدة في السطر ، ومن الواضح أن حجم الخط أصغر من الحجم المحدود في الوظيفة؟



Johnmen   (2002-07-05 10:59) [1]

يجب ألا يتجاوز طول السلسلة الناتجة البعد الخاص بالحقل الذي يريدون إدخاله فيه ... :)



kaif   (2002-07-05 11:29) [2]

في بعض الأحيان ، إذا كان طول حقل معين ضمنيًا ، فيمكن أن يؤدي التسلسل إلى حدوث خطأ ، خاصة في الاستعلامات باستخدام UNION. في بعض الأحيان يكون من المنطقي بعد السَلسَين القيام بعمل قوالب إجبارية باستخدام CAST.



Boroda Oleg   (2002-07-05 12:19) [3]

يبدو أن كل شيء محير بشكل واضح ، وأنا أتحقق من الطول الناتج. هنا هو الإجراء أدناه. أحجام المتغيرات تساوي بدقة تلك الموجودة في قاعدة البيانات. أين يمكن أن أكون مخطئا هنا؟ الإجراء هو عربات التي تجرها الدواب في مكان ما في 50 ٪ من الطلبات.
ومع ذلك ، بالمناسبة ، كيف يمكنني استخدام cast لضبط عدد المنازل العشرية؟ يتم تمرير المتغير 0.5 الخاص بي إلى السلسلة كـ "0.500000000000" ، لكن هل سيكون من الضروري "0.5"؟


عملية إنشاء GETGOOD (
معرف INTEGER
) عوائد (
اسم فاركار (300)
) كما
إعلان متغير FRM VARCHAR (10) ؛
إعلان متغير حزب العدالة والتنمية.
إعلان متغير AMM NUMERIC (15,3)؛
إعلان متغير VK INTEGER ؛
إعلان متغير VOL NUMERIC (15,3) ؛
DECLARE VARIABLE SVOL VARCHAR (10)؛
أعلن المتغير SK المتكامل؛
إعلان متغيرة SUP NUMERIC (15,3) ؛
إعلان VARIABLE SSUP VARCHAR (10) ؛
إعلان متغيرة متغيرة المسلسل (10) ؛
إعلان VARIABLE NM VARCHAR (80) مجموعة الأحرف WIN1251؛
إعلان VARIABLE NAM VARCHAR (300) حرف مجموعة WIN1251؛
DECLARE VARIABLE T_VL VARCHAR (10)؛
بدأ
لل
اختر سلسلة اسم ، نموذج FR.SFORM ، SG.AMMOUNTKEY ، SG.AMMOUNT ، SG.VOLIMEKEY ، SG.VOLIME ،
VL.SVOLIME MVOLIME ، SG.SUPPORTKEY ، SG.SUPPORT ، SP.SSUPPORT ،
(حدد الاسم من GOODTREE WHERE GT.ID_PARENT = ID_GOODTREE) NAME
من GOODTREE GT ، SERIALGOOD SG ، نموذج FR ، VOLIME VL ، دعم SP
أين (GT.ID_GOODTREE =: ID)
AND (GT.ID_SOURCE = SG.ID_SERIAL)
AND (SG.FORM = FR.ID_FORM)
AND (SG.MEASUREVOLIME = VL.ID_VOLIME)
AND (SG.MEASURESUPPORT = SP.ID_SUPPORT)
INTO Serial ، Frm ، AK ، Amm ، VK ، Vol ، SVol ، SK ، Sup ، SSup ، Nm
هل تبدأ
/ * Nm = rtrim (Nm) ؛
نانومتر = ltrim (نانومتر) ؛
Frm = ltrim (rtrim (Frm)) ؛ * /
NAM = Nm || "" || FRM.
إذا (VK = 0) ثم تبدأ
/ * NAME = numbtostr (Vol)؛ * /
t_vl = cast (Vol as varchar (30))؛
NAM = NAM || t_vl || SVol.
النهاية
NAME = NAM؛
التوقف المرحلي.
END
النهاية



صفحات: 1 فرع كامل

المنتدى: "القواعد";
الأرشيف الحالي: 2002.07.25;
تنزيل: [xml.tar.bz2];

الطابق العلوي





الذاكرة: 0.55 ميغابايت
الوقت: 0.035 ج
1-81369
MASTERok
2002-07-14 00:53
2002.07.25
شفافية


7-81497
ah
2002-05-04 15:54
2002.07.25
كيفية التحقق مما إذا كان منفذ com مشغول من نافذة واحدة


3-81124
Boss_em
2002-06-26 18:04
2002.07.25
المؤشر إلى السجل الحالي ، باستخدام الجدول


1-81277
tovSuhov
2002-07-15 13:44
2002.07.25
مقسم عمودي PopupMenu ...


4-81510
UniNik
2002-05-20 10:43
2002.07.25
مشكلة في 98 ...





الأفريكانية الألبانية عربي الأرميني أذربيجان الباسكي البيلاروسية Bulgarian التشيكية الصينية المبسطة) تقاليد صينية) الكرواتية التشيكية دانماركي Dutch English الإستونية الفلبينية Finnish جيب
الجاليكية الجورجية الألمانيّة اليونانيّة الكريولية الهايتية اللغة العبرية الهندية الهنغارية أيسلندي Indonesian الأيرلندية Italian اليابانيّة الكوريّة اللاتفية اللتوانية المقدونية الملايو المالطية Norwegian
اللغة الفارسية بولنديّة البرتغاليّة رومانية Russian صربي السلوفاكيّة سلوفيني إسباني السواحيلي Swedish Thai التركية الأوكراني الأردية الفيتنامية ويلزي اليديشية البنغالي البوسنية
السيبيونو الاسبرانتو الغوجاراتية الهوسا همونغ الإيبو جاوي الكانادا الخمير لاو لاتينية الماوري المهاراتية المنغولية النيبالية البنجابية الصومالية التاميل التيلجو اليوروبا
زولو
Английский Французский ألماني Итальянский البرتغالية Русский Испанский