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

كيف أعرف القيمة التى تم إدخالها فى حقل Identity؟

بدأه GHOST2010 في 15 أكتوبر 2009 · 3 رد · 764 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

عندى جدول يحتوى على حقل مفتاح أساسى موصف على أنه Identity

أقوم بإدخال بيانات داخل هذا الجدول من صفحة ويب ولا أستخدم StoredProcedure للإدخال وإنما أستخدم SqlDataAdapter

فهل توجد طريقة لمعرفة القيمة التى تم إسنادها لهذا الحقل بعد عملية الإدخال؟؟

هل أستخدم StoredProcedure وأستعلم عن @@SCOPE_IDENTITY ؟

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

feed.1.gif

#2

http://msdn.microsoft.com/en-us/library/ks9f57t0.aspx

لا ادري لماذا لا يدخل SqlDataAdapter في مزاجي

The World Must Be Crazy

#3

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

عزيزي انت تعرف ان Identity يعمل في الـSQL وليس في الـAPP ولذلك لن تراه الا بعد ان تخزن الـRocord والسبب انه انك تعمل في وضع منفصل ويمكن لغيرك ان يعمل بنفس الوقت وإحتياطا عليك بالالتزام بالارقام الذي ينتج بعد الخزن ، اما إن كان المستخدم (1) فيمكن لدالة MAX(ID)+1 ان يجلب لك الرقم الاخير +1 وشكرا

#4

مرحبا شبح :wink:

@@SCOPE_IDENTITY انه يعطي قيمة ID الأخير إدراج باستخدام اتصال لاخر جدول تم اضافة سجل جديد

استعمل IDENT_CURRENT('tablename')

	   Dim cnnstr As String = "Dsn=something"
	   Dim cnn As new Odbc.OdbcConnection(cnnstr)
	   Dim dr As Odbc.OdbcDataReader
	   cnn.Open
	   'MsgBox(cnn.State)
	   Dim cmd As new Odbc.OdbcCommand
	   cmd.CommandText = "SELECT IDENT_CURRENT('employees') as xx" 
	   cmd.Connection = cnn
	   dr = cmd.ExecuteReader()
	   dr.Read
	   MsgBox(dr("xx").ToString)

يمكنك اسعمال SQLClient() بدل ODBC()

هل تريد مثالا؟

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