c_doost
پنج شنبه 10 فروردین 1391, 15:00 عصر
سلام
در پروژه ای یک کومبو دارم که در آن اطلاعات را از دیتابیس میگیرم و به ان بایند میکنم این کومبو مربوط به رشته هنری است که هر وقت کاربر روی هر یک از آیتم های موجود در کومبو انتخاب میکند شناسه هنری
ان بدست می آید
شناسه هنری به همراه 2 فیلد دیگر را میخوام در جدول جدیدی درج کنم ولی قبلش میخوام چک کنم که این اطلاعات که الان میخوام درج کنم از قبل در دیتابیس موجود نباشد
دو فیلد دیگر به نام های تخصص هنری و شناسه تخصصی هستند
تخصص هنری یک کد هست مثلا 01 یا 02 .... که تعدادش معلوم نیست
شناسه تخصصی عنوان تخصص هنرمند هست مثلا نویسنده ادبیات داستانی که میشود شناسه تخصصی
توصیح این قسمت کمی برام سخته امیدوارم درست منظورمو برسانم
رشته های هنری ما دقیق معلوم نیست چند تاست ولی یک دو تا مثال میزنم مطلب روشن بشه
رشته هنری :
شعر و ادب
شناسه :
11
تخصص هنری :
01
02
03
شناسه تخصصی :
نویسنده ادبیات داستانی
نویسنده طنز
سارینده شعر
------------------------------------------------------------
حالا رشته هنری جدید
رشته هنری :
سرود و موسیقی
شناسه :
22
تخصص هنری :
01
02
03
04
شناسه تخصصی :
سازنده نت
نوازنده
سرود حماسی
خواننده
و به همین روال باید رشته هنری ، شناسه ، تخصص هنری ، شناسه تخصصی باید تعریف کنیم
حالا قبل از درج در دیتابیس باید چک کنیم اطلاعات تکراری درج نشه
در اینجا شناسه تخصصی نباید اصلا تکراری درج بشه
تخصص هنری میتونه تکرراری باشه ولی برای هر شناسه منحصر بفرد هست
مثلا
رشته هنری | شناسه | تخصص هنری | شناسه تخصصی
شعر و ادب | 11 | 01 | نویسنده ادبیات داستانی
شعر و ادب | 11 | 02 |نویسنده طنز
شعر و ادب | 11 | 01 | نویسنده ادبیات داستانی
حالا اگر بخوایم این سطر آخری که قرمز نوشتم را در دیتابیس درج کنیم اشتباهه به دو دلیل :
1- رشته هنری ، شعر و ادب هست شناسه آن هم 11 پس تخصص هنری آن نمیتونه 01 باشه
2-چون رشته هنری ، شعر و ادب هست شناسه آن هم 11 و شناسه تخصصی هم تکراریه پس اشتباهه
حالا برای رشته هنری جدید داریم :
رشته هنری | شناسه | تخصص هنری | شناسه تخصصی
سرود و موسیقی | 22 | 01 | سازنده نت
سرود و موسیقی | 22 | 02 | نوازنده
کاملا واضحه که در رشته هنری با کد 22 تخصص هنری 01 و 02 ...... مجاز است ولی فقط باید یک بار تکرار بشه
حالا چطوری میتونم قبل از درج در دیتابیس یک کوئری بنویسم که چک کنم اطلاعات تکراری درج نشه یک کوئری که به ذهنم رسید اینه ولی جواب نمیده
cmd = new SqlCommand("SELECT * FROM tbl_shenasetakhasosi where takhasos_honari='" + txt_takhasoshonari.Text + "' or shenase_takhasosi='" + txt_shenase.Text + "'", con);
با تشکر
در پروژه ای یک کومبو دارم که در آن اطلاعات را از دیتابیس میگیرم و به ان بایند میکنم این کومبو مربوط به رشته هنری است که هر وقت کاربر روی هر یک از آیتم های موجود در کومبو انتخاب میکند شناسه هنری
ان بدست می آید
شناسه هنری به همراه 2 فیلد دیگر را میخوام در جدول جدیدی درج کنم ولی قبلش میخوام چک کنم که این اطلاعات که الان میخوام درج کنم از قبل در دیتابیس موجود نباشد
دو فیلد دیگر به نام های تخصص هنری و شناسه تخصصی هستند
تخصص هنری یک کد هست مثلا 01 یا 02 .... که تعدادش معلوم نیست
شناسه تخصصی عنوان تخصص هنرمند هست مثلا نویسنده ادبیات داستانی که میشود شناسه تخصصی
توصیح این قسمت کمی برام سخته امیدوارم درست منظورمو برسانم
رشته های هنری ما دقیق معلوم نیست چند تاست ولی یک دو تا مثال میزنم مطلب روشن بشه
رشته هنری :
شعر و ادب
شناسه :
11
تخصص هنری :
01
02
03
شناسه تخصصی :
نویسنده ادبیات داستانی
نویسنده طنز
سارینده شعر
------------------------------------------------------------
حالا رشته هنری جدید
رشته هنری :
سرود و موسیقی
شناسه :
22
تخصص هنری :
01
02
03
04
شناسه تخصصی :
سازنده نت
نوازنده
سرود حماسی
خواننده
و به همین روال باید رشته هنری ، شناسه ، تخصص هنری ، شناسه تخصصی باید تعریف کنیم
حالا قبل از درج در دیتابیس باید چک کنیم اطلاعات تکراری درج نشه
در اینجا شناسه تخصصی نباید اصلا تکراری درج بشه
تخصص هنری میتونه تکرراری باشه ولی برای هر شناسه منحصر بفرد هست
مثلا
رشته هنری | شناسه | تخصص هنری | شناسه تخصصی
شعر و ادب | 11 | 01 | نویسنده ادبیات داستانی
شعر و ادب | 11 | 02 |نویسنده طنز
شعر و ادب | 11 | 01 | نویسنده ادبیات داستانی
حالا اگر بخوایم این سطر آخری که قرمز نوشتم را در دیتابیس درج کنیم اشتباهه به دو دلیل :
1- رشته هنری ، شعر و ادب هست شناسه آن هم 11 پس تخصص هنری آن نمیتونه 01 باشه
2-چون رشته هنری ، شعر و ادب هست شناسه آن هم 11 و شناسه تخصصی هم تکراریه پس اشتباهه
حالا برای رشته هنری جدید داریم :
رشته هنری | شناسه | تخصص هنری | شناسه تخصصی
سرود و موسیقی | 22 | 01 | سازنده نت
سرود و موسیقی | 22 | 02 | نوازنده
کاملا واضحه که در رشته هنری با کد 22 تخصص هنری 01 و 02 ...... مجاز است ولی فقط باید یک بار تکرار بشه
حالا چطوری میتونم قبل از درج در دیتابیس یک کوئری بنویسم که چک کنم اطلاعات تکراری درج نشه یک کوئری که به ذهنم رسید اینه ولی جواب نمیده
cmd = new SqlCommand("SELECT * FROM tbl_shenasetakhasosi where takhasos_honari='" + txt_takhasoshonari.Text + "' or shenase_takhasosi='" + txt_shenase.Text + "'", con);
با تشکر