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

ممكن مساعده لدى مشكله فى التعديل

بدأه shosho842000 في 11 نوفمبر 2009 · 10 رد · 808 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اريد تعديل رقم القسم من خلال datagrid

الجدول هو كالاتى :

id,id_part,name,id_dept

اريد تعديل رقم القسم واسمه ورقم الادارة بواسطه رقم id حيث انه identity

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

وشكرا

WindowsApplication9.rar

3.txt

#2

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

المرجو إرفاق قاعدة البيانات مع المشروع حتى تسهل عملية تجربة المشروع و تصحيحه...

#3

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

هذا scrpit الخاص بقاعده البيانات

9.txt

#4

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

السيناريو المرفق لا يحتوي إلا على سينارويهات إنشاء stored procedures. هذا موضوع يبين كيفية إنشاء سيناريو إنشاء قاعدة بيانات سكل سيرفر بالكامل :

بحث : كيفية تحديد صلاحيات مستخدمي Sql Server و البرامج المتصلة به.

#5

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

اسفه على التاخير فى رفع قاعده البيانات

دى قاعده البيانات والمشاركه الى قبلها كان فيها stored

شكرا

7.txt

#6

حضرتك مردتش عليا فى الموضوع دا ارفقت لك قاعده البيانات مع stored وشكراااااااااا

#7

نسيتي فتح الإتصال قبل المناداة على الدالة ExecuteNonQuery و إغلاقه بعد التنفيذ

#8

انا عملت زى ما حضرتك قولتلى بس نفس الخطا

الخطا بيظهر فى ترتيب الحقول تقريبا لانه بيقولى لا يمكن تحويل من نص الى رقم رغم انه مرتبيب صح

وشكراااااااااااا

#9

بالنسبة للبرامترز التي تقبل النوع VarChar و التي نمرر لها متغير من نوع String فهي تحتاج إلى تحديد الخاصية Size على حجم الحقل أي عدد الحروف حتى تعمل.

قومي بالبحث عن هذا السطر في الكود :

			cmd.Parameters.Add("@name", SqlDbType.VarChar).Value = name

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

			cmd.Parameters("@name").Size = 50

إذا بقي الإستثناء يرفع بعد التعديل, المرجو إرفاق نص رسالة الخطأ و السطر الذي يحدث فيه الخطأ.

#10

دى رساله الخطا

Conversion from string "sdsdsds" to type 'Integer' is not valid.

------------------------------------------------------------------------------

دا الكود

For x As Integer = 0 To DataGridView2.Rows.Count - 2
			Dim name As String
			Dim id, id_part, id_dept As Integer
			id = DataGridView2.Rows.Item(x).Cells(0).Value
			id_part = DataGridView2.Rows.Item(x).Cells(1).Value
			name = DataGridView2.Rows.Item(x).Cells(2).Value
			id_dept = DataGridView1.CurrentRow.Cells(1).Value
			cmd.Connection = cn
			cmd.CommandType = CommandType.StoredProcedure
			cmd.CommandText = "updatepart"
			cmd.Parameters.Clear()
			cmd.Parameters.Add("@id_part", SqlDbType.Int).Value = id_part
			cmd.Parameters.Add("@name", SqlDbType.VarChar).Value = name
			cmd.Parameters("@name").Size = 50
			cmd.Parameters.Add("id_dept", SqlDbType.Int).Value = id_dept
			cmd.Parameters.Add("@id", SqlDbType.Int).Value = id
			cn.Open()
			cmd.ExecuteNonQuery()
			cn.Close()
		Next
		MessageBox.Show("تم التعديل ")

يتم الوقوف على هذا السطر

id_part = DataGridView2.Rows.Item(x).Cells(1).Value

#11

الرسالة واضحة أختي الكريمة, الخلية رقم 1 في الداتاجريدفيو2 تحتوي على القيمة "sdsdsds" من نوع String و تحاولين إحالتها إلى المتغير id_part من نوع Integer

قومي بتغيير محتوى الخلية إلى عدد طبيعي و إن شاء الله تحل المشكلة.

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…