منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
ترتيب البارمترات - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : ترتيب البارمترات (/showthread.php?tid=8021)



ترتيب البارمترات - ابو عمر - 17-03-13

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


عندما يختلف ترتيب البارمترات في جمله الاستعلام مع البارمترات يعطي خطأ

مثل
كود :
'   "INSERT INTO tb (p_name,id) VALUES (@p_name,@id)"
اذا كتبت البارمترات هكذا يعطيني خطأ
كود :
'   Cmd.Parameters.AddWithValue("@id", TextBox1.Text)
Cmd.Parameters.AddWithValue("@p_name", TextBox2.Text)
لابد ان اكتب البارمترات بنفس ترتيب جمله الاستعلام .. كيف يمكن معالجه هذه النقطه
انا اريد ان يتم كتابه البارميتر بأي ترتيب دون حدوث خطأ


ترتيب البارمترات - أبو يعقوب - 17-03-13

انسخ الخطأ هاهنا

نصيحة عامة استخدموا امكانيات التنقيح في الفيجوال ستوديو لاسيما خاصية التنقيح سطر سطر ، واختيار مكان التنقيح عن طريق Break Points أو الكلمة المحجوزة Stop


ترتيب البارمترات - السكر المغرور - 17-03-13

غريبه انا ما يعطي خطا ،، يمكن لان اسماء الحقول تشابه أسماء البار ميتر

ممكن تغير اسم البارميتر او تزيد عليه حروف مثل par_ ثم اسم الحقل

جرب

مثال


كود :
Dim con As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\for my folder\my new project\حقيبة المبرمج\WindowsApplication39\bin\Debug\library code.mdb")
Dim insertcommand As New OleDbCommand("insert into subject_library (  subject_content , subject_node , subject_name , subject_tool , subject_notes) values ( subject_content= @Par_subject_content , subject_node= @Par_subject_node , subject_name= @Par_subject_name , subject_tool= @Par_subject_tool , subject_notes= @Par_subject_notes)", con)
insertcommand.Parameters.Clear()
insertcommand.Parameters.AddWithValue("@Par_subject_content", OleDbType. WChar).Value = Trim(TextBox1.Text)
insertcommand.Parameters.AddWithValue("@Par_subject_node", OleDbType. WChar).Value = Trim(TextBox2.Text)
insertcommand.Parameters.AddWithValue("@Par_subject_name", OleDbType. WChar).Value = Trim(TextBox3.Text)
insertcommand.Parameters.AddWithValue("@Par_subject_tool", OleDbType. WChar).Value = Trim(TextBox4.Text)
insertcommand.Parameters.AddWithValue("@Par_subject_notes", OleDbType. WChar).Value = Trim(TextBox5.Text)

con.Open()
insertcommand.ExecuteNonQuery()
con.Close()



ترتيب البارمترات - السكر المغرور - 17-03-13

أبو يعقوب كتب :انسخ الخطأ هاهنا

نصيحة عامة استخدموا امكانيات التنقيح في الفيجوال ستوديو لاسيما خاصية التنقيح سطر سطر ، واختيار مكان التنقيح عن طريق Break Points أو الكلمة المحجوزة Stop


ممكن توووضح اكثر و تستخدم مثال عنها Smile


ترتيب البارمترات - السكر المغرور - 17-03-13

ركز على الطريقة الي استخدمتها


إقتباس :"insert into subject_library ( subject_content , subject_node , subject_name , subject_tool , subject_notes) values ( subject_content= @Par_subject_content , subject_node= @Par_subject_node , subject_name= @Par_subject_name , subject_tool= @Par_subject_tool , subject_notes= @Par_subject_notes)"

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


ترتيب البارمترات - أبو يعقوب - 18-03-13

السكر المغرور كتب :ممكن توووضح اكثر و تستخدم مثال عنها Smile

أنا شخصيا استخدم الكلمة Stop

اكتب هذه الكلمة أينما أردت وعندما يصل لها البرنامج سينتقل الفيجوال ستوديو بك إلى الكود وتستطيع المتابعة سطر سطر بواسطة الزر F11 وبهذا تستطيع مراقبة القيم والعمليات


ترتيب البارمترات - @@أبورائد@@ - 18-03-13


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





[SIZE=5]مسألة البارامترات وجملة الاستعلام من حيث الترتيب وتطابق الاسماء،،،،،،،،

مع OleDb يكــــــــون التدقيق في
الترتيـب فقط بغض النظر عن تطابق الاسمـاء،

مع SqlClient يكون التدقيق في
الاسمـاء فقط[/SIZE] بغض النظر عن تطابق الترتيب.





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



ترتيب البارمترات - ابو عمر - 18-03-13

شكرا لك اخي أبو يعقوب جزاك الله خيرا ،، انا بالفعل استخدم Break Points لاحدد مصدر الخطأ
اخي السكرر المغرور جزاك الله خيرا ،، انا ايضا لا تواجهني مشكله في الترتيب ولكن مع السيكوال سيرفر Smile
استاذي ابو رائد ،، جزاك الله خيرا حضرتك قولت المفيد وده اللي انا اتوصلتله بعد عناء ...


ترتيب البارمترات - ابو عمر - 19-03-13

السكر المغرور كتب :ركز على الطريقة الي استخدمتها




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

شكرا لك اخي لم اخذ بالي من طريقتك في اعطاء قيمه للبارميتر الا الان
الطريقه تبدو جيده سأقوم بتجربتها

ولكن كيف يتم استخدام نفس الطريقه في التعديل ؟؟

جزاك الله خيرااااا


ترتيب البارمترات - السكر المغرور - 20-03-13

هكذا اخي


كود :
Dim con As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\for my folder\my new project\WindowsApplication39\bin\Debug\library code.mdb")
Dim editcommand As New OleDbCommand("Update subject_library set  subject_content= @Par_subject_content , subject_name= @Par_subject_name , subject_node= @Par_subject_node , subject_notes= @Par_subject_notes , subject_tool= @Par_subject_tool  ", con)
editcommand.Parameters.Clear()
editcommand.Parameters.AddWithValue("@Par_subject_content", OleDbType. WChar).Value = Trim(TextBox1.Text)
editcommand.Parameters.AddWithValue("@Par_subject_name", OleDbType. WChar).Value = Trim(TextBox2.Text)
editcommand.Parameters.AddWithValue("@Par_subject_node", OleDbType. WChar).Value = Trim(TextBox3.Text)
editcommand.Parameters.AddWithValue("@Par_subject_notes", OleDbType. WChar).Value = Trim(TextBox4.Text)
editcommand.Parameters.AddWithValue("@Par_subject_tool", OleDbType. WChar).Value = Trim(TextBox5.Text)

con.Open()
editcommand.ExecuteNonQuery()
con.Close()