PDA

View Full Version : کمک در طراحی جدول



mostafalfc
شنبه 06 آبان 1391, 17:05 عصر
سلام دوستان
من یه مشکل دارم لطفا کمکم کنید
چطوری میشه تو جدول های دیتابیس کاری کرد که فیلدی که به عنوان Identity تعریف شده و خودش اتوماتیک مقدار میگیره رو کاری کنیم که وقتی یه رکورد پاک شد از دیتابیس بتونیم از id رکورد استفاده کنیم دوباره

مثلا 10تا رکورد تو جدول هست بعد ما میایم رکورد های 9 و 10 رو پاک میکنیم ولی وقتی یه رکورد جدید درج میکنیم شماره 11 رو به اون رکورد میده که باعث خراب شدن برنامم میشه من میخوام وقتی رکورد 9 و 10 پاک شد وقتی دوباره رکورد درج کردم عدد 9 رو تو فیلد ID درج کنه


ممنون میشم کمکم کنید خیلی واجبه

مرتضی تقدمی
شنبه 06 آبان 1391, 23:32 عصر
سلام
از دستور زیر استفاده کنید:


dbcc checkident("Table_1",reseed,12)

موفق باشید

مهدی هادیان2
یک شنبه 07 آبان 1391, 09:20 صبح
بسم الله الرحمن الرحيم با سلام خواندن اين تاپيک هم خالي از لطف نيست: http://barnamenevis.org/showthread.php?233094-Reset-%DA%A9%D8%B1%D8%AF%D9%86-%D9%85%D9%82%D8%AF%D8%A7%D8%B1-%DB%8C%DA%A9-%D8%B3%D8%AA%D9%88%D9%86-Identity موفق باشيد

mostafalfc
یک شنبه 07 آبان 1391, 16:59 عصر
دوستان من برنامم رو با سی شارپ نوشتم
میخوام ببینم میشه تو خود مد طراحی دیتابیس توsql express اینکارو انجام داد یا نه ؟
بدون اینکه کد نویسی کنیم
من نمیدونم این کدهایی که گفتین رو کجا وارد کنیم

مهدی هادیان2
دوشنبه 08 آبان 1391, 10:03 صبح
بسم الله الرحمن الرحيم با سلام در آدرسي که براتون گذاشتم چند راه توضيح داده است بفرمائيد از کدوم ميخواهيد استفاده کنيد. موفق باشيد.

mostafalfc
دوشنبه 08 آبان 1391, 16:57 عصر
سلام
از دستور زیر استفاده کنید:


dbcc checkident("Table_1",reseed,12)

موفق باشید

دوست میشه یه کم درباره این دستور یه کم توضیح بدین
من اصلا متوجه نشدم که این دستور رو کجا باید وارد کنم و اون دوتامقدار آخری چیه
ممنون

مهدی هادیان2
سه شنبه 09 آبان 1391, 08:19 صبح
بسم الله الرحمن الرحيم با سلام در تاپيکي که خدمتتون عرض کردم کامل توضيح داده تازه راه هاي بهتر از اين رو هم توضيح داده است. اصلا تاپيک رو مطالعه کرديد؟ موفق باشيد.

mostafalfc
سه شنبه 09 آبان 1391, 18:30 عصر
بسم الله الرحمن الرحيم با سلام در تاپيکي که خدمتتون عرض کردم کامل توضيح داده تازه راه هاي بهتر از اين رو هم توضيح داده است. اصلا تاپيک رو مطالعه کرديد؟ موفق باشيد.

بله خوندم
فقط من نمیدونم این دستورانی که گفتن چطوریه
و اونجا هم فقط همین دستورو نوشته بودن و یکی دیگه
من میخوام اینو تو دیتابیسم اضافه کنم نه اینکه دستور وارد کنم
میخوام خود دیتابیس این قابلیتو داشته باشه که وقتی یه رکورد حذف شد آیدیش رو آزاد کنه
ممنون میشم راهنمایی مفید بکنید نه اینکه بگید برم تو اون تاپیک اونم که هیچی بدرد بخور توش نیست

مهدی هادیان2
چهارشنبه 10 آبان 1391, 14:17 عصر
بسم الله الرحمن الرحيم با سلام فکر نميکنم هيچي توش نبود؛ تغريبا هر کي هر چي به ذهنش رسيده بود گفته بود بگذريم......... آقا رضا راه ساده اي پيشنهاد داده بودند: "شما فيلدي كه قراره Identity باشه رو از نوع bigint بگيريد و كاري هم نداشته باشيد چه ركوردهايي حذف شده. ولي اگر نظم كدها براتون مهمه ميتونيد شماره رو خودتون توليد كنيد به اين صورت كه ابتدا تعداد ركوردهاي ثبت شده در سال جاري رو بدست بياريد و يك واحد بيشتر اون رو به عنوان شماره مورد نظر در نظر بگيريد. زمان حذف هم بعد از اينكه ركورد مورد نظر حذف شد شماره تمام كدهاي بعد از ركورد حذف شده رو يك واحد كم كنيد. " مي تونيد کم شدن واحد ها رو با تريگر انجام بديد. موفق باشيد.