PDA

View Full Version : سوال: آوردن id ، identity و نمایش دادن بر روی textbox



tehranihosseini
سه شنبه 20 تیر 1391, 12:33 عصر
سلام
من یک table خالی دارم که یک کلید از نوع int دارد که identity کردمش.
می خواهم وقتی که form من load می شود آن بر روی یک text box نمایش داده بشود.
کد هایی که نوشتم error می دهند.
اما نمی دانم مشکل از کجاست.
ممنون می شوم کمکم کنید.

فرید نجفلو
سه شنبه 20 تیر 1391, 13:09 عصر
سلام
دوست عزیز شما کد تون رو یکم شلوغ کردید و تو چسبوندن دو تا دستور هم مشکل دارید
البته روش صحیحی رو هم انتخاب نکردید

string TSQL = @"SELECT IDENT_CURRENT('tblAccoun') + IDENT_INCR('tblAccoun') AS NewID";
System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection("ConnStr");
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand(TSQL, conn);
conn.Open();
object sqlRes=cmd.ExecuteScalar();
conn.Close();
int ID = Convert.ToInt32(sqlRes);
txtIdAccount.Text = ID.ToString();

tehranihosseini
سه شنبه 20 تیر 1391, 14:21 عصر
ممنون دوست عزیز می شه یکم در مورد @"SELECT IDENT_CURRENT('tblAccoun') + IDENT_INCR('tblAccoun') AS NewID" توضیح بدی که چه کاری می کند؟؟
یعنی فقط اسم جدول کافیه؟

tehranihosseini
چهارشنبه 21 تیر 1391, 18:35 عصر
آقای نجفلو می شه لطف کنید جوابم را بدهید.

Mahmoud.Afrad
چهارشنبه 21 تیر 1391, 21:24 عصر
سلام
IDENT_CURRENT مقدار فعلی آخرین identity رو میده.
IDENT_INCR هم مقدار افزایشی identity رو میده.
اگر هم میخواهید بفهمید که اگر مقدار جدیدی رو به جدول اضافه کنید مقدار id اون چند خواهد بود(یعنی قبل از اینزرت متوجه بشید id چند خواهد بود) میتونید از جمع مقدار فعلی بعلاوه مقدار افزایشی identity استفاده کنید.

tehranihosseini
پنج شنبه 22 تیر 1391, 11:01 صبح
ممنون از پاسختون دوست عزیز:لبخندساده: