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

سؤال عن الإدخال إلى الجدول

مغلق
بدأه mouna في 7 نوفمبر 2006 · 6 رد · 934 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

with OCIQuery3 do

begin

Active:=false;

SQL.Clear;

SQL.Text :='select max(nb) from STOREOPP ';

Active := true;

vnb := FieldByName('max(nb)').Value;

Active:=false;

SQL.Clear;

OCIQuery4.Active:=false;

OCIQuery4.SQL.Clear;

OCIQuery4.sql.Text:='insert into STOREOPP'+

'values ('+inttostr(vnb+1)+','+ DateToStr(date)+',1,'+ edtamont.text +',1); ';

OCIQuery4.Active:= True;

end;

دائما تظهر رسالة الخطأ المرفقة

ولكم جزيل الشكر

erro_ms.bmp

تم تعديل هذه المشاركة بواسطة mouna في 7 نوفمبر 2006 في 13:15

#2

رسالة الخطأ واضحة: عندما تكون تعليمة SQL لا تعيد قيم أي أنها ليست SELECT فلا يمكن استخدام Open أو Active بل يجب استخدام ExecSQL

#3

كنت سوف اغلق المشاركة للاسباب التالية:

اولا يجب استخدام تنسيق ال code كي يظهر ال code بشكل واضح و مقروء

with OCIQuery3 do
begin
Active:=false;
SQL.Clear;
SQL.Text :='select max(nb) from STOREOPP ';
Active := true;
vnb := FieldByName('max(nb)').Value;
Active:=false;
SQL.Clear;
OCIQuery4.Active:=false;
OCIQuery4.SQL.Clear;
OCIQuery4.sql.Text:='insert into STOREOPP'+
'values ('+inttostr(vnb+1)+','+ DateToStr(date)+',1,'+ edtamont.text +',1); ';
OCIQuery4.Active:= True;
end;

ثانيا: يجب شرح المشكلة بشكل افضل من وضع الكود على الاقل ذكر اسم نوع قواعد البيانات المستخدم

ثالثا: هناك شيئ اسمه Debug يستخدم لمعرفة مكان الخطأ لكي يتتبع الخطأ و معرفة من اي سطر يظهر

رابعا: افضل طريقة لمعرفة السبب الناتج عن رسالة خطأ ما هو Google it

يبدوا ان fh_feras قد وضع لك الحل, حظك حلو,,

في المرة القادمة الرجاء التقيد بما تم ذكره في المشاركة السابقة

كنت اريد ان تجدي الخطأ بنفسك.

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#4

:^)

#5
mouna كتب:
السلام عليكم ورحمة الله و بركاته

with OCIQuery3 do

begin

Active:=false;

SQL.Clear;

SQL.Text :='select max(nb) from STOREOPP ';

Active := true;

vnb := FieldByName('max(nb)').Value;

Active:=false;

SQL.Clear;

OCIQuery4.Active:=false;

OCIQuery4.SQL.Clear;

OCIQuery4.sql.Text:='insert into STOREOPP'+

'values ('+inttostr(vnb+1)+','+ DateToStr(date)+',1,'+ edtamont.text +',1); ';

OCIQuery4.Active:= True;

end;

دائما تظهر رسالة الخطأ المرفقة

ولكم جزيل الشكر

#6

?

1 2 me and u r alone

1 2 u a i a a

#7

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

اقتباس
رسالة الخطأ واضحة: عندما تكون تعليمة SQL لا تعيد قيم أي أنها ليست SELECT فلا يمكن استخدام Open أو Active بل يجب استخدام ExecSQL
اقتباس
ثانيا: يجب شرح المشكلة بشكل افضل من وضع الكود على الاقل ذكر اسم نوع قواعد البيانات المستخدم

نعم يجب ذكر اسم نوع قواعد البيانات المستخدم

with OCIQuery3 do
begin
 Close;
 SQL.Clear;
 SQL.Add('select max(nb) from STOREOPP ');
 open;
 vnb := FieldByName('max(nb)').Value;
end;
with OCIQuery4 do
begin
 Close;
 SQL.Clear;
 sql.Add('insert into STOREOPP'+ 'values ('+inttostr(vnb+1)+','+ DateToStr(date)+',1,'+ edtamont.text +',1) ');
 ExecSQL;
end;

:rolleyes:

..................بسم الله الرحمن الرحيم..................

وتعاونوا على البر والتقوى ولا تعاونوا على الإثم والعدوان

.............................................................................................................................

لنبدا دورة دلفي

سلسلة تعلم برمجة Pascal , تعلم اساسيات الباسكال

التحكم بمنفذ الطابعة عن طريق الدلفي

سلسلة دروس تعلم قواعد بيانات Midas

هيا لنبدأ بالApi

أفكار سريعة, مجموعة شفرات صغيرة وفاعله لدلفي

كتب + مواقع ::: مراجع مهمة للغة دلفي, مجموعة كتب مجانية + مواقع مفيدة

مكتبه الأكواد, أكواد وبرامج دلفي

.............................................................................................................................

18_07_05_10_53_18_1121752398da3wa_18.gif

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

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