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

إلى

ما إذا كان يمكن أن يكون هناك قيم معلمة استعلام فارغة في SQL البحث عن فروع مماثلة


shakh   (2001-12-03 20:29) [0]

يوم جيد. هناك قاعدة بيانات (access2000). هناك واجهة المستخدم (. إكس). يحدث الاتصال بين الواجهة وقاعدة البيانات من خلال استعلامات ADO و SQL. هناك مجموعة من النماذج لملء جداول قاعدة البيانات المختلفة. في الوقت نفسه ، يمكن ترك بعض "التعديلات" في النموذج خالية ، أي أنها لا تحتوي على أي قيم. والسؤال الآن هو: هل من الممكن إرسال طلب عبر SQL لإضافة (تحديث) الجدول إذا كانت بعض حقول بيانات الطلب خالية (حقل = "") هذا هو أساسا حول حقول النص.
بالطبع ، هناك خيار للتحقق من قيمة الحقل من أجل "الفراغ" وتكوين استعلام بشكل حيوي ، ولكن إذا كانت هناك قطع 20 من هذه الحقول ، فهذا بناء مرهق إلى حد ما.



Котелок   (2001-12-04 07:35) [1]

كان ذلك ممكنا.

على سبيل المثال:

إدراج في الجدول (عمود 1 ، عمود 2) (: col1 ،: col2)

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



shakh   (2001-12-04 19:31) [2]

الإضافة ... حسنا ، جيد. وإذا تم استخدام مكون AdoQuery نفسه لاستعلامات مختلفة ، فيمكن أن يكون عدد المعلمات مختلفًا. وإذا كتبت شيئًا مثل قيم AdoQuery1.SQL.Add ("insert in table (col1، col2)" + Edit1.Text + "،" + Edit2.text + ")")؛ ثم مع وجود قيم فارغة في Edit1 أو Edit2 ، ينبثق خطأ حول نوع متغير غير صالح ، أو أن الحقل لا يحتوي على معلمة افتراضية ؛ (
ولا أريد حقًا سحب مجموعة من معلمات طلب البحث الثابت



Delirium   (2001-12-04 20:08) [3]

ولكن ما الذي يمنعك من تمرير القيم "الفارغة" إذا كان لديك حقول ، بالطبع ليست خالية؟



Котелок   (2001-12-05 00:46) [4]

إذا كان يجب أن يكون لديك سطور في التعديلات ، فجرّب مثل هذا ...

قيم AdoQuery1.SQL.Add ("insert in table (col1، col2)" + "" "+ Edit1.Text +" "" "+"، "+" "" + Edit2.text + "" "+ +") ")؛
مع إشارة واضحة إلى أن هذا هو سلسلة.
على الرغم من خلال parambyname لا يزال أكثر موثوقية.



shakh   (2001-12-05 02:08) [5]

وإضافة واحدة أخرى.
ربما شرحت سيئة حيث الكلب بالتفتيش ٪)
هناك استعلام AdoQuery1.SQL.Add ("insert in table (col1، col2) قيم (" + "" "" + Edit1.Text + "" "" + "،" + "" "+ + Edit2.text +" "" " + ")") ؛
كل شيء واضح هنا. ولكن في النموذج عند إدخال البيانات ، تم ترك Edit1 (على سبيل المثال) فارغًا ، ثم عند تنفيذ هذا الطلب ، يزحف إيجور. ولذا ، أود التخلص منها (من الأخطاء ") بأقل تكلفة ممكنة.
من المؤكد أن كتابة شيء مثل ... القيم (: col1 ،: col2) في الاستعلام ، ولكن عندما يكون هناك عدد قليل من الحقول ، وإذا كان هناك حوالي 20 قطعة ، فقم بإنشاء كل هذه المعلمات في عارض الكائنات ، ثم دون الخلط في كتلتها الكبيرة ، عيّن لهم قيمًا من التعديلات - هذا بالفعل رقم مع الحيل.
يمكنك التمسك الشيكات نوع
إذا Edit1.Text <> "" ثم تمكين_field_to_query
ولكن هذا هو الانحراف الكامل!



Котелок   (2001-12-05 03:33) [6]

ليس من الواضح لماذا خلق كائنات في المفتش؟

أما بالنسبة للتحقق من التحرير الفارغ والتضمين الديناميكي للمعلمة في الاستعلام ، فليس هذا تحريفًا ، ولكنه ظاهرة طبيعية تمامًا ، على الرغم من أنه من الممل الترميز.

هنا على سبيل المثال:

sqlText: = "insert to table ("؛
إذا edit1.text <> "" بعد ذلك
sqlText: = sqlText + "column1،"
إذا edit2.text <> "" بعد ذلك
sqlText: = sqlText + "column2،"
حذف (sqlText ، الطول (sqlText) ، 1) ؛
sqlText: = sqlText + ") قيم ("؛
إذا edit1.text <> "" بعد ذلك
sqlText: = sqlText + ": column1،"
إذا edit2.text <> "" بعد ذلك
sqlText: = sqlText + ": column2،"
حذف (sqlText ، الطول (sqlText) ، 1) ؛
sqlText: = sqlText + ")"؛

AdoQuery1.close.
AdoQuery1.SQL.clear.
AdoQuery1.SQL.Add (sqlText)؛
AdoQuery1.ExecSql.

يمكنني أيضًا اقتراح الدخول إلى Access في مُنشئ الجدول الذي تُدرج فيه ولجميع الحقول التي قد تكون فارغة ، قم بتعيين المعلمة التي تسمح بإدخال سطور فارغة. ثم يجب أن تختفي عملية التحقق من الحقول الفارغة ولا يجب طرح الأخطاء ..



Ra   (2001-12-05 14:03) [7]

تحتاج فقط لمنع مثل هذا الطلب ، واحدة من طريقتين
1) قبل التنفيذ ، تحقق .. إذا لم يتم ملء جميع الحقول - عرض رسالة ...
2) أو حتى disab "pour control (على الأرجح زر) حتى يتم إدخال كافة البيانات الضرورية .. لهذا .. في جميع عمليات التحرير على حدث OnChange ، شنق المعالج التالي:

بدأ Button1.Enable: = (Edit1.Text <> "") و (Edit2.Text <> "") و ... ينتهي.




NDeu   (2001-12-05 14:19) [8]

> Ra © (05.12.01 14: 03)
إلى حد ما:
بدأ
Button1.Enable: = (المرسل كـ TEdit). النص <> ""
الغاية؛
:)





Котелок   (2001-12-06 01:00) [9]

> رع
في بعض الأحيان توجد مثل هذه المهام عندما يكون مثل هذا الطلب ضروريًا.

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



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

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

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





الذاكرة: 0.59 ميغابايت
الوقت: 0.025 ج
6-22316
dmur
2001-09-24 20:58
2002.01.08
اعتراض الأخطاء عند الاتصال باستخدام المقابس


1-22213
T2
2001-12-16 07:14
2002.01.08
سر api و oth.


6-22276
Lamok
2001-10-05 23:13
2002.01.08
إرسال البيانات إلى الإنترنت


6-22281
فيرونا
2001-10-04 12:22
2002.01.08
إرسال الرسائل إلى البريد الإلكتروني


3-21975
دكتور ويب
2001-12-06 09:12
2002.01.08
إنشاء قاعدة بيانات Interbase من برنامج





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