delphi4arab منتديات دلفي للعرب
خطأ في إستعلام SQL - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : خطأ في إستعلام SQL (/showthread.php?tid=9370)

الصفحات: 1 2


خطأ في إستعلام SQL - benali137 - 03-05-2018

السلام عليكم.: لدي مشكل في فقرة في بريمج من إستعلام لم أجد لها حل 
والغرض منه الفلترة في عدة أعمدة مرة في آن واحد
كود :
query1.SQL.Clear; query1.SQL.Add('select *'); query1.SQL.Add('from "e:\thpaie\f\Fi012004.DBF"'); query1.SQL.Add('where enf<>0 and corps=911'); datasource8.DataSet:=query1; يعطيني رسالة خطأ type mismatch in expression مع العلم كل أعمدة الفلترة float



RE: خطأ في إستعلام SQL - أبو معاذ - 04-05-2018

وعليكم السلام.
في التعليمة where اكتب مباشرة اسم الجدول و ليس مسار قاعدة


RE: خطأ في إستعلام SQL - Mr.DOS - 04-05-2018

سلام عليكم
ضع اسم الجدول بدل مسار قاعدة البيانات


RE: خطأ في إستعلام SQL - benali137 - 04-05-2018

وعليكم السلام وقع لي نفس الخطأ مع وضع الإمتداد أو بدونه
كود :
query1.SQL.Clear; query1.SQL.Add('select *'); query1.SQL.Add('from Fi012004.DBF'); query1.SQL.Add('where enf<>0 and corps=911'); datasource8.DataSet:=query1;



RE: خطأ في إستعلام SQL - mobile - 04-05-2018

السلام عليكم
الاخوة يقصدون ان تضح اسم الجدول الموجود في قاعدة البيانات وليس قاعدة البيانات نفسها
مثلا ليك قاعدة بيانات اسمها Fi012004.DBF هته القاعدة فيها جداول مثلا produits,fournissuers,Clients
بال query تستعلم select * from produits

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


RE: خطأ في إستعلام SQL - محمد عبد العزيز - 04-05-2018

(04-05-2018, 12:06 PM)mobile كتب : مثلا ليك قاعدة بيانات اسمها  Fi012004.DBF  هته القاعدة فيها جداول مثلا produits,fournissuers,Clients

السلام عليكم
DBF يعني قاعدة بيانات DBase اسم الملف هو نفسه اسم الجدول الوحيد
الاستعلام يكون من الشكل

كود :
query1.close; query1.SQL.Clear; query1.SQL.Add('select *'); query1.SQL.Add('from Fi012004'); query1.SQL.Add('where enf<>0 and corps=911'); query1.open;
فرضا البرنامج وملف dbf بنفس المكان والا يجب وضع المسار في الخاصية DataBaseName للمكون Query
انظهر نفس الخطأ فالامر متعلق نوع بيانات احد الحقلين في
Where


RE: خطأ في إستعلام SQL - benali137 - 04-05-2018

السلام عليكم .
ألف شكر إخواتي على المساعدة لكن مازال عندي نفس الخطأ حتى بعد وضع كود أخي [size=small][size=medium][b]B.M.AbdelAziZ[/size][/size][/b][size=small]  يبقى نفس الخطأ لكن لاحظت ملاحظة بعد جعل الكود يفلتر في عمود واحد يعمل عادي الفلترة فهل هذا يعني أنه لايمكن أن أعمل فلترة في عمودين أو أكثر في وقت واحد[/size]
كود :
query1.close; query1.SQL.Clear; query1.SQL.Add('select *'); query1.SQL.Add('from Fi012004'); query1.SQL.Add('where enf<>0'); query1.open;

عمود واحد فقط وهو enf
أرجو المساعدة ربي يجازيكم


RE: خطأ في إستعلام SQL - محمد عبد العزيز - 04-05-2018

جرب الحقل الثاني فقط، هل يظهر الخطأ ؟
كود :
query1.close; query1.SQL.Clear; query1.SQL.Add('select *'); query1.SQL.Add('from Fi012004'); query1.SQL.Add('where corps=911'); query1.open;



RE: خطأ في إستعلام SQL - benali137 - 04-05-2018

السلام عليكم : اخي عبد العزيز الكود الأخير شغال


RE: خطأ في إستعلام SQL - محمد عبد العزيز - 04-05-2018

حسنا جرب هذا
كود :
query1.close; query1.SQL.Clear; query1.SQL.Add('select *'); query1.SQL.Add('from Fi012004'); query1.SQL.Add('where (enf<>0) and (corps=911)'); query1.open;