PDA

View Full Version : برگشت ID سطر بعد از insert ؟



merlin_vista
پنج شنبه 11 بهمن 1386, 12:33 عصر
سلام
آقا من یک جدول دارم که id اون به صورت Identity هست .
حلا من میخواهم وقتی توش اطاعات با استقاده از SQLCommand درج میکنم id سطری که اطلاعات توش درج شده را برگشت بده :افسرده: و من اونو به کاربر نشون بدم :خجالت:

raravaice
پنج شنبه 11 بهمن 1386, 12:48 عصر
فکر کنم منظورت اینه



Dim pic_number As Integer
dastoor = "SELECT IDENT_CURRENT('tour') "
con = New SqlConnection(strcon)
cmdselect = New SqlCommand(dastoor, con)
con.Open()
pic_number = cmdselect.ExecuteScalar
con.Close()

Chabok
پنج شنبه 11 بهمن 1386, 13:03 عصر
سلام

http://barnamenevis.org/forum/member.php?find=lastposter&t=92796

در اینجا در مورد ExecuteScalar بحث شده که پاسخ شما هم داخلش هست .
موفق باشید .

merlin_vista
پنج شنبه 11 بهمن 1386, 13:13 عصر
فکر کنم منظورت اینه



Dim pic_number As Integer
dastoor = "SELECT IDENT_CURRENT('tour') "
con = New SqlConnection(strcon)
cmdselect = New SqlCommand(dastoor, con)
con.Open()
pic_number = cmdselect.ExecuteScalar
con.Close()


tour چیه !! فیلد ای دی ؟ :متفکر:

raravaice
پنج شنبه 11 بهمن 1386, 13:14 عصر
نام جدول !

ایده دوستمون chabok هم تو این تاپیک جالبه که من بی اطلاع بودم

http://barnamenevis.org/forum/showthread.php?t=92796

hesam_a110
پنج شنبه 11 بهمن 1386, 13:38 عصر
درود بر شما
ته insert که دارید select @@ Identity را قرار بدهید و تو کدتون بجای exectnonquery از ExecuteScalar استفاده کنید

object obj =sqlcmd.ExecuteScalar ()
که با تبدیل obj می توانید عدد داشته باشید
پیروز و نیک باشید

Behrouz_Rad
پنج شنبه 11 بهمن 1386, 13:54 عصر
از Scope_Identity استفاده کنید. چون معمولا نتیجه Insert خودمون رو لازم داریم که این تابع میده. بعضا برنامه نویسها از Identity@@ استفاده میکنند، اما در مورد این متغیر مراقب باشید چون اگر Insert شما یک Trigger فعال کنه و داخل اون هم به جدول دارای فیلد Identity رکوردی اضافه بشه، Identity@@ مقدار تولید شده در Trigger رو برمیگردونه، نه نتیجه Insert ما رو.

موفق باشید.