PDA

View Full Version : سوال: تولید کد کلید شماره عضویت



136913691369
پنج شنبه 02 خرداد 1392, 22:11 عصر
سلام میشه برنامه ای بنویسید با سی شارپ که وقتی رو کلید شماره عضویت کلیک کردیم کد بده که از50شروع بشه وبترتیب باشه واسه پروژه فارغ التحصیلیمه نرم افزارمدیریت باشگاه است. میخوام وقتی ورزشکار ثبت نام میکنه کد بهش بده

parvizwpf
پنج شنبه 02 خرداد 1392, 23:20 عصر
حتما باید رو فرم اتفاق بیافته. چون معمولا این کار سمت دیتا بیس برنامه اتفاق میافته و خودش شماره دهی میکنه.باید سمت دیتابیس از فیلدهای identity استفاده بشه.

c_doost
پنج شنبه 02 خرداد 1392, 23:41 عصر
فیلد دیتابیس را Identity کن

یا توی سی شارب کد بنویس آخرین سطر جدولتو بگیر و ستون شماره عضویت را بگیر یکی بهش اضافه کن (کار بالا خیلی راخته)

136913691369
جمعه 03 خرداد 1392, 09:50 صبح
فیلد دیتابیس را Identity کن

یا توی سی شارب کد بنویس آخرین سطر جدولتو بگیر و ستون شماره عضویت را بگیر یکی بهش اضافه کن (کار بالا خیلی راخته)

سلام دوست عزیز ممنون که جوابم دادی ولی نمیدونم چی باید بنویسم؟
واسه اینکه عددی که تویستون عضویت هست نشون بد این خط کد نوشتم جواب نداد


Vid.DataBindings(new bindings("text",ds,
"sabte varzeshkar.ID"));

VIDنام تکست باکسم IDهم نام ستونم

c_doost
جمعه 03 خرداد 1392, 10:15 صبح
فرض کن توی اس کیو ال یه جدول داری یه فیلد id داری (که کلید اصلیه(درمثال شما شماره عضویت )از نوع int (که بتونی روی اون عملیات اضافه کردن یک واحد انجام بدی) روی این فیلد کلیک راست کرده set PRIMARY KEY را بزن حالا برو قسمت پایین دنبال Identity specification بگرد از اونجا is identity را yes کن

sasan_22
جمعه 03 خرداد 1392, 12:20 عصر
همانطور که دوستان گفتند
1- از خود SQL Server کمک بگیر فیلد رو identity بذار (البته مشکلی هم که داره پست 4 گفته)
2- تو برنامت بعد از درج آخرین رکورد آی دی رو نگه دار و توی setting ذخیره کن که سری بعد استفاده کنی ازش
3- همون مرحله 2 منتها تو رجیستری ذخیره کن
4- قبل از درج آخرین ID رو بخون +1 سپس درج کن

موفق باشید

khokhan
جمعه 03 خرداد 1392, 13:24 عصر
همانطور که دوستان گفتند
1- از خود SQL Server کمک بگیر فیلد رو identity بذار (البته مشکلی هم که داره پست 4 گفته)
2- تو برنامت بعد از درج آخرین رکورد آی دی رو نگه دار و توی setting ذخیره کن که سری بعد استفاده کنی ازش
3- همون مرحله 2 منتها تو رجیستری ذخیره کن
4- قبل از درج آخرین ID رو بخون +1 سپس درج کن

موفق باشید

من نمی دونم چرا بایستی لقمه رو دور سرمون بگردونیم :لبخند:

خیلی راحت می تونه یه فیلد شماره عضویت ایجاد کنه بدون اینکه identity داشته باشه که بعدا هم توی دردسر بیافته

بعد با دوسطر کد آخرین شماره ثبت شده در بانک رو بگیره و یه دونه بگذاره روش


int Radif()
{
SqlConnection con = new SqlConnection(objSqlConnection);
SqlDataAdapter DA = new SqlDataAdapter("select userid From Users", objSqlConnection);
DataTable DT = new DataTable();
DA.Fill(DT);
return DT.Rows.Count + 1;

}

تموم شد رفت پی کارش حالا به فرض در رویداد باتن عضو جدید کافیه بگه :


textBox1.Text = Radif().ToString();

136913691369
جمعه 03 خرداد 1392, 15:33 عصر
دوست عزیزkhokhan جان من روی کلید شماره عضویت دابل کلیک کردم نوشتم
//private void btnidv_Click(object sender, EventArgs e)
//{


// SqlConnection conn = new SqlConnection();
// SqlCommand comm = new SqlCommand();
// comm.Connection = conn;




// conn.ConnectionString = "server=.;database=Bashgah;integrated security=true";
// conn.Open();

// SqlDataAdapter dr = new SqlDataAdapter("Select ID From Sabte_Varzeshkar ", conn);

// // SqlDataAdapter da1 = new SqlDataAdapter("Select ID From Sabte_Varzeshkar_zan", conn);

// //DataSet ds = new DataSet();
// DataTable dt = new DataTable();
// dr.Fill(dt);
// int j= dt.Rows.Count + 51;

// VID.Text = Convert.ToString(j);




// conn.Close();
//}
حالا وقتی تمام اطلاعات را وارد مکنم بعد روی کلید شماره عضویت کلیک میکنم کد میده ...مثللأ تا60حالا اگه فردی که شمارش 55بوده حذف شد وخواستم دوباره فردجدید ثبت نام کنه کدعضویت56میده نه 61 چرا؟

136913691369
شنبه 04 خرداد 1392, 00:15 صبح
salam.chera kasi javabam nemide??????????????????//:گریه::گریه:

khokhan
شنبه 04 خرداد 1392, 00:43 صبح
salam.chera kasi javabam nemide??????????????????//:گریه::گریه:
سلام
یه بار هم کوئری رو به این شکل بنویس

SqlDataAdapter dr = new SqlDataAdapter("SELECT TOP(1) ID From Sabte_Varzeshkar ", conn);

مهدی هادیان2
شنبه 04 خرداد 1392, 09:47 صبح
بسم الله الرحمن الرحیم
برای اینکه آخرین کد عضویت رو بهتون بده؛ تکه کد زیر رو امتحان کنید:
SELECT FildName FROM TableName WHERE FildName IN (SELECT MAX(FildName) FROM TableName)
موفق باشید.

136913691369
شنبه 04 خرداد 1392, 12:02 عصر
بسم الله الرحمن الرحیم
برای اینکه آخرین کد عضویت رو بهتون بده؛ تکه کد زیر رو امتحان کنید:
SELECT FildName FROM TableName WHERE FildName IN (SELECT MAX(FildName) FROM TableName)
موفق باشید.

سلام.ممنون درست کارکرد تشکرویژه

مهدی هادیان2
شنبه 04 خرداد 1392, 17:59 عصر
خواهش میکنم.
خداروشکر

136913691369
یک شنبه 05 خرداد 1392, 10:54 صبح
سلام دیشب 1تایپیک جدیدگذاشتم هنوز تاییدنشده واسه نمایش چرا؟

136913691369
یک شنبه 05 خرداد 1392, 14:17 عصر
خواهش میکنم.
خداروشکر+-`
سلام آقامهدی شرمنده دوباره سوال پرسیدم من 1فرم ثبت نام ورزشکار دارم ولی درsql دوتا جدول 1ی واسه مرد1ی واسه زن اینجوری کد کلید شماره عضویت نوشتم درسته؟:گیج::متفکر::ناراحت:
private void btnidv_Click_1(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
SqlCommand comm = new SqlCommand();
comm.Connection = conn;
conn.ConnectionString = "server=.;database=Bashgah;integrated security=true";
conn.Open();
DataTable dt = new DataTable();
DataTable dt1 = new DataTable();
SqlDataAdapter dr = new SqlDataAdapter("SELECT ID FROM Sabte_Varzeshkar WHERE ID IN (SELECT MAX (ID)FROM Sabte_Varzeshkar)", conn);
SqlDataAdapter dr1 = new SqlDataAdapter("SELECT ID FROM Sabte_Varzeshkar_zan WHERE ID IN (SELECT MAX (ID)FROM Sabte_Varzeshkar_zan)", conn);

dr.Fill(dt);
dr1.Fill(dt1);
for (int i = 0; i < dt.Rows.Count; ++i)
{
VID.Text = dt.Rows[i][0].ToString();
}
conn.Close();
}
میدونم توحلقیforواسه شرطم مشکلداره نمیدونم چطوررفع کنم؟توsqlدرست ثبت مشه ولی j,dفثطف ذخط[g,d کلیدشماره عضویت درست نیست عددی ک نشون مده

مهدی هادیان2
یک شنبه 05 خرداد 1392, 22:13 عصر
بسم الله الرحمن الرحیم
با سلام

من 1فرم ثبت نام ورزشکار دارم ولی درsql دوتا جدول 1ی واسه مرد1ی واسه زن اینجوری کد کلید شماره عضویت نوشتم درسته؟
نمی دونم چرا 2 تا جدول در نظر گرفتید؟ شاید چیز خاصی باعث این موضوع شده است؛ ولی در نگاه اول به نظر میرسد یک جدول باشد و با یک فیلد بولین بشه ایندو رو از هم تمیز داد.

میدونم توحلقیforواسه شرطم مشکلداره نمیدونم چطوررفع کنم؟توsqlدرست ثبت مشه ولی j,dفثطف ذخط[g,d کلیدشماره عضویت درست نیست عددی ک نشون مده
متاسفانه متوجه مشکلتون نشدم.
لطفا کدها رو هم داخل تگ سی شارپ بذارید.
موفق باشید.