منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] الفزعة ياجماعة الخير ... إضافة Parameter لل sqlcommadn - نسخة قابلة للطباعة

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



الفزعة ياجماعة الخير ... إضافة Parameter لل sqlcommadn - superawdi - 20-09-16

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


اخوتي
طالبكم


مشكلة صغيرة


عامل دالة في مشروع فجول بيسك نت تقوم بتنفيذ Stored_Procedure

ما اطول عليكم

هذا مثال
PHP كود :
With _Command
            
.CommandType CommandType.StoredProcedure
            
.Connection _Connection
            
.CommandText "Fill_Box_Employess"
 
           .Parameters.AddWithValue("@ID"CInt(ID))
 
       End With 
           .Parameters.AddWithValue("@ID", CInt(ID))
هذي طريقتي لأضافة Parameter

هنه شغال ميه ميه

الان في عندي عدة قيم

ومضطر لأضافة عدة باراميترس


المهم

قمت بأضافة ArrayList 
وحفظ القيم فيها

وقمت بعمل Loop من شان اضيف الباراميترس

كما هو موضح اسفلة

PHP كود :
With _Command
            
.CommandText Procedure_Name
            
.CommandType CommandType.StoredProcedure
            
.Connection _Connection

            For i 
0 To infor.Count 1
                
.Parameters.AddWithValue("@" infor.Item(i).ToString(), infor.Item(i))
 
           Next

        End With 

ومهما حاولت استخدم طرق اخرى

مافي فايدة تجي نفس الرسالة

PHP كود :
Additional informationProcedure or function 'Insert_Data_to_Employee2' expects parameter '@Employee_FullName'which was not supplied
 
افيدونا 
لطريقة اضافة الباراميترس 
عن طريق LOOP

شكرا Huh



RE: الفزعة ياجماعة الخير ... إضافة Parameter لل sqlcommadn - أبو عمر - 20-09-16

1- هل يوجد في الجدول pk?
2- هل اسماء الحقول هي نفسها محتويات المصفوفة؟
غريب كود الاضافة في جملة التكرار جداً


RE: الفزعة ياجماعة الخير ... إضافة Parameter لل sqlcommadn - superawdi - 20-09-16

(20-09-16, 03:38 AM)HASAN6.0 كتب : جرب

For i = 0 To infor.Count - 1
               .Parameters.AddWithValue("@" + infor.Item(i).ToString().trim, infor.Item(i))
           Next

جربتها اخي الكريم ..  نفس المشكلة

يعني انا اضفت Parameters بطريقة الكتابة يعني واحد واحد

واشتغلت طبيعي

وكما تعلمون ان اسماء ال Parameters ، مش ضروري تكون نفس اسمائها في storedProcedure يعني مش مشكلة الاسم اهم شي الترتيب

(20-09-16, 06:06 AM)أبو عمر كتب : 1- هل يوجد في الجدول pk?
2- هل اسماء الحقول هي نفسها محتويات المصفوفة؟
غريب كود الاضافة في جملة التكرار جداً

اولاً : نعم في PK ، بس هو Auto Increment يعني ، مافي داعي له ، هو ينضاف بالتكرار
ثانياً :  نعم بس مضاف لها رمز ال@ ، وما  اظن ان فيها مشكلة فحتى لو كان اسم الباراميتر نفس الاسم ، المهم الترتيب
ثالثاً : ماغريبة الا الشيطان  Tongue

السؤال  الأهم هل يمكننا إضافة ال Parameters عن طريق Loop ام لا؟


RE: الفزعة ياجماعة الخير ... إضافة Parameter لل sqlcommadn - أبو عمر - 20-09-16

اذا شغال على اكسس ارفع مثال بسيط نطقطق عليه
Sad
لا تمشورني للاوفيس ولا ل SQL


RE: الفزعة ياجماعة الخير ... إضافة Parameter لل sqlcommadn - superawdi - 20-09-16

(20-09-16, 03:24 PM)أبو عمر كتب : اذا شغال على اكسس ارفع مثال بسيط نطقطق عليه
Sad
لا تمشورني للاوفيس ولا ل SQL

اخي العزيز .

للاسف البرنامج SQLSERVER
بس مش مشكلة

جرب انت اي شي

جدول مثلا حقول
FNAME
LNAME
DOB
ADDRESS

صنعت StoredProcedure
insert into Tablename (fname,lname,dob,address) values (@FN,@LN,@DB,@add)

انا اريد في ال vb.net
اصنع الباراميترس باستخدام التكرار LOOP

يعني استخدم اي طريقة تعجبك


RE: الفزعة ياجماعة الخير ... إضافة Parameter لل sqlcommadn - ممدوح - 20-09-16

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


الاكسس يعتمد الترتيب وليس الاسماء وممكن الاسماء تكون علامة استفهام مو مشكلة عنده

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


لازم ننتبه لهذا الاختلاف


RE: الفزعة ياجماعة الخير ... إضافة Parameter لل sqlcommadn - ابراهيم النعيمي - 22-09-16

السلام عليكم

اخي العزيز ضع السطر التالي
كود :
.Parameters.Clear()

قبل السطر
كود :
End With

تحياتي...