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

التعديل على قيمة في قاعدة البيانات دون قرءتها

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

اخواني الكرام

السلام عليكم

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

بمعني انا عندي قيمه في جدول عباره عن قيمه رقميه ( عدد ) هل يمكن اضافة او تقليل هذه القيمه دون ان اقوم بقرائتها يعني على طول اكتب كود التعديل وهو يقوم بزياده هده القيمه او انقاصها دون ان يعرف ماهي

انا كنت استخدم لحل هذا المشكله كودين اثنين هما كود لقراءه العدد واخر للتعديل عليه

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

Dim val As Integer
		sql4 = "select tot from DTBrns where cl=? "
		Dim MyReader As OleDbDataReader
		Dim selectCommand As New OleDbCommand
		selectCommand.Connection = Con
		selectCommand.CommandText = sql4
		With selectCommand.Parameters
			.Add(New OleDbParameter("@cl", OleDbType.Integer))
			.Item("@cl").Value = "ahmad"
		End With
		MyReader = selectCommand.ExecuteReader  ' جملة قراءه للقيمه
		If MyReader.Read Then
			Val = CInt(MyReader.Item("tot"))
		End If
		val = val + 100 ' اضافه  رقم للقيمه الموجوده  
		sql4 = "update DTBrns set tot=? where cl=?"
		Dim updateCommand As New OleDbCommand
		updateCommand.Connection = Con
		updateCommand.CommandText = sql4
		With updateCommand.Parameters
			.Add(New OleDbParameter("@tot", OleDbType.Currency))
			.Add(New OleDbParameter("@cl", OleDbType.Integer))
			.Item("@tot").Value = val
			.Item("@cl").Value = "ahmad"
		End With
		updateCommand.ExecuteNonQuery() 'جملة التعديل على القيمه بعد قراءتها

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

والثانيه لتغير القيمه بعد اضافه 100 عليها

فهل يمكن اختصار هذا الحدث في جمله واحده فقط وهي جملة التعديل باضافه القيمه لها مباشرا او تقليل القيمه

1145392391.gif
#2

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

يمكنك فعل ذلك عن طريق جملة الـ SQL :

UPDATE t1 SET [xx]=[xx]+1

بإفتراض ان XX هو الحقل المراد التعديل عليه او تغير قيمته وذلك مثال لأضافة رقم واحد على قيمة الحقل المسمى بـ XX

بالتوفيق ,,,,,,

A7med_prof

تم تعديل هذه المشاركة بواسطة A7med_prof في 10 مايو 2007 في 23:36

اقتباس

آسف الدخول متقطع هذه القتره

اقتباس

[يمين]

.[/يمين]

A7med_prof-4-2007.jpg

اخر مواضيعي 2007

االمثال مطبق على موقع بورصه سعودي

.

.

مواضيع مهمه ومطلوبه بكثره VB6

.

بــرامج ومشــاريع عربيه كامــله {HnHn} والمزيد في قسم برامج الاعضاء || ربط قواعد بيانات اكسس مع الفيجوال بيسك, مادة دراسية كاملة {بنت اليمن}|| المرجع الشامل لجمل SQL ا {GENIUS-IT} || كيفية التعامل مع مكتبة الـ DAO, في الوصول إلى قاعدة بيانات {رمضان} || مثال ريط Visaul Basic 6.0 مع SQL SERVER ا || العمليات التي تجرى على قاعدة البيانات, مثال كامل {بنت اليمن} || تصدير البيانات من الاكسل الي الاكسس بالفيجوال بيسك {HnHn} || البحث في قاعدة البيانات {MANSUR} || قواعد البيانات العلائقية وتقنيات الوصول إليها {عبد الله فتحي} || كيفية أظهار بيانات جدولين بواسطة التاريخ ,,,,,,,

.

أخي ربما سؤالك اجابته في أحدى هذه المواضيع فإن لم تجد قم بالبحث وان لم تجد اطرح سؤالك مع وضع عنوان مناسب بحيث ان يكون هذا العنوان دال على محتوى الموضوع فغير ذلك من أكبر الكبائر في المنتدى وسيؤدي الى غلق او حذف موضوعك .

.

</
#3

انا أتفق مع اخي الكريم ...

ويمكنك ايضا انشاء Trigger لعمل ذلك ...

وهنا شرح له

اولا من sql-server-performance

وهنا شرح بسيط له من منتدانا الحبيب

و السلام خير ختام

تم تعديل هذه المشاركة بواسطة فلسطيننا في 11 مايو 2007 في 00:20

رَبِّ لَا تَذَرْنِي فَرْداً وَأَنتَ خَيْرُ الْوَارِثِينَ

#4

شكرا اخي الكريم

بالفعل نجح معي الموضوع

ولكن

هل يمكن ان استخدم البرميتر في هذه الجمله

اقصد انا جربت وحاولت انو استخدم البرميتر وللاسف لم ينجح معي الموضوع

اتمنى لو تكتب مثال بسيط عن كيفيه استخدام البرميتر في هذه الفكره

1145392391.gif
#5

السلام عليكم

هل يمكن استخدام البرميتر في طريقه الحل

1145392391.gif
#6

الحل موجود في مشاركتك الاولى فقط عدلي الاستعلام

كمايلي

sql4 = "update DTBrns set tot= tot + ? where cl=?"

والقيمة التي ستضاف كما يلي بدل المجموع

.Item("@tot").Value = 100

#7

شكراً على الموضوع

In order to understand recursion, one must first understand recursion

alawfiadel@yahoo.com

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

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

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

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

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

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