الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اريد تصحيح لخطأ في جملة fetch

مغلق
بدأه - a l t - في 19 مايو 2005 · 2 رد · 634 مشاهدة · في قواعد بيانات Oracle
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

في جدول باسم message يحتوي على عمودين

الاول باسم results و هو لترقيم الصفوف من 1 الى 10 .

والعمود الثاني باسم nu_type

حاولت كتابت بلوك لادخال add اذا كان رقم الصف فرديا و even اذا كان زوجي.

صادفتني مشكل في السطر التالي

FETCH res INTO num;

واكثر من مره يصادفني هذا الخطا في اكتر من بلوك ولا اعرف له سبب

فياليت احد الاخوان يوضحلي هذه المشكلة

هذا الكود

declare
A number(9);
B number(9);
num number(9);
CURSOR res IS
SELECT RESULTS FROM MESSAGE where RESULTS=7;
begin
OPEN res
FETCH res INTO num;
A:=num/2;
B:=(num+1)/2;
IF A<B THEN
UPDATE message
SET nu_type='The number is EVEN'
where RESULTS=num;
else
UPDATE message
SET nu_type='The number is ODD'
where RESULTS=num;
end if;
close res;
end;

وهذه رسالة الخطأ

FETCH res INTO num;
*
ERROR at line 9:
ORA-06550: line 9, column 1:
PLS-00103: Encountered the symbol "FETCH" when expecting one of the following:
. ( %; for
The symbol ";" was substituted for "FETCH" to continue.

11_03_06_12_48_57_1142110137Image(_66).jpg

#2

و لله الحمد

تم أكتشاف الخطأ وهو نسيان الفاصلة بعد

OPEN res

:)

ونحول الموضوع الي حلول افضل

من عنده حل افضل برمجيا من هذا الحل فليتكرم علينا مشكوراً

ملاحظة

لايوجد في الجدول صف برقم 6 و لا برقم 8 ،

و استفسار

اذا فية عملية رياضيه في pl/sql مثل الـ % في الجافا ( لإيجاد خارج القسمة ) . خبروني.وشكرا

تم تعديل هذه المشاركة بواسطة - a l t - في 19 مايو 2005 في 15:19

11_03_06_12_48_57_1142110137Image(_66).jpg

#3

اخى العزيز

جرب الكود

SELECT DECODE (MOD(x,2),0,'EVEN','ODD') FROM dual

حيث x هو الرقم اللى انتى عايز تعرف هو فردى او زوجى

هذا الموضوع مغلق.

مواضيع مشابهة