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

اريد كتابه sql update لتحديث ال dataset كلها

مغلق
بدأه macnux في 7 يناير 2007 · 3 رد · 1,843 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله

انا اعرف ان ال command builder يمكنه انشاء جمله التحديث ولكنى اريد كتابه sql update لتحديث ال dataset كلها

يعنى اريد جمله update mytable set ....

وبعدها اعمل executenonquery() ثم يتم التحديث لل dataset كلها من تعديل وحذف ..

كيف انشئ هذه الجمله ومره اخرى لا اريد انشاء الجمله من ال command builder اريدها sql خالصه

شكرا :)

#2

السلام عليكم

اكتبها ثم انشئ Command object أو dataAdapter و اسند كل جملة للخاصية المناسبة له

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

 'Instantiate DataAdapter,  dataSet
	Friend WithEvents da As New OleDb.OleDbDataAdapter
	Private ds As New System.Data.DataSet

		'Declare and Instantiate Connection and Command Objects
		Dim cnn1 As New OleDb.OleDbConnection( _
		"Provider=Microsoft.jet.OLEDB.4.0;" & _
		"Data Source= myData.mdb")


		'Select Command
		da.SelectCommand = New OleDb.OleDbCommand( _
		"SELECT userID, userName " & _
		"FROM myTable", cnn1)

		'Insert Command
		da.InsertCommand = New OleDb.OleDbCommand( _
		"INSERT INTO myTable " & _
		"(userID,userName) " & _
		"VALUES (?,?)", cnn1)

		'Update Command
		da.UpdateCommand = New OleDb.OleDbCommand( _
		"Update myTable SET userID = ?, " & _
		"userName = ? WHERE userID = ?", cnn1)

		'Delete Command
		da.DeleteCommand = New OleDb.OleDbCommand( _
		"DELETE FROM myTable WHERE  userID = ?", cnn1)


		'Populate das1
		Me.da.Fill(ds, Nothing, 2, "myTable")
		Me.dg1.DataSource = ds
		Me.dg1.DataMember = "myTable"

		'Define a Primary key for the DataTable
		ds.Tables(0).PrimaryKey = _
		New DataColumn() _
		{ds.Tables(0).Columns("userID")}

موفق إن شاء الله.

في المثال يتضح المقال

#3

استاذنا ومشرفنا العزيزالغملاسي

ردك جميل ووافي ولكن

هناك عيب "حسب وجهة نظري" يكرر من كافة الاخوة المبرمجين عند التعامل مع Ado.Net لا أدري هل العيب من MicrSoft أم منا نحن لقلة إدراكنا لماهية وخفايا هذه الأداة وأعني بقولي هذا طول الكود الذي أستخدمه لحفظ أو تحديث أو إدخال سجل جديد وهذا طبعا بخلاف أمكانية ADODC في الإصدار السادس من VB فأرجو منك استاذي العزيز ومن كل من له باع في البرمجة بالـ VB.Net أن يعطينا فكرة عن ذلك أرجو أن يكون الاستفسار واضح وللتوضيح أكثر يتم البحث بجملة واحدة فقط وهي Adodc1.Recordset.Find "num = " + Text1 ويتتم إضافة سجل جديد بأمر واحد هو Adodc1.Recordset.AddNew ويتم الحفظ أو التحديث بأمر واحد هو Adodc1.Recordset.Update ويتم التراجع عن التحديث أو الحفظ بالأمر Adodc1.Recordset.CancelUpdate وحسب علمي أن الجديد أسهل وأيسر من القديم ولكن الذي نراه هنا العكس فهل أنا مخطئ ؟؟!!!

#4

السلام عليكم

اخي احسن اللهُ إليك , الجواب كان وِفقًا للسؤال, لا أكثر

لانه من المعلوم ان الـ ADO.NET يتكفل عنك كل هذا العناء سواءً عبر المعالج السحري Wizard

أو عبر الـ Command Builder .

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

ليكن جاهز لتفادي اي قيمة null ترسل عبر اي جملة. ( تخيل ذلك )

فكما اخبرتك ان Ado.net فيه عملية الاختيار و التحديث و غير ذلك.

في المثال يتضح المقال

هذا الموضوع مغلق.

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