PDA

View Full Version : صفر كردن autonumber



Yanehsar
دوشنبه 20 خرداد 1392, 10:53 صبح
سلام
چطوري ميتونم فيلدي كه از نوع autonumber هست رو صفر كنم ؟

saeed1234n
سه شنبه 21 خرداد 1392, 22:15 عصر
سلام
دوست عزیز :لبخندساده:

یک راه آن این است که این فیلد را حذف کنید و مجددا ایجاد کنید :متعجب:

Yanehsar
پنج شنبه 23 خرداد 1392, 11:40 صبح
سلام
دوست عزیز :لبخندساده:

یک راه آن این است که این فیلد را حذف کنید و مجددا ایجاد کنید :متعجب:
اشکال کار هم همینه دیگه باید تمام جداول رو از اول ایجاد کنم :عصبانی++:

saeed1234n
پنج شنبه 23 خرداد 1392, 11:44 صبح
با سلام
دوست عزیز نیاز نیست کل جدول را حذف کنید بلکه فقط فیلد مربوطه را حذف میکنید و مجددا ایجاد می کنید .

hamid-nice
جمعه 24 خرداد 1392, 01:39 صبح
با سلام
یک راه ساده اش این است که کل اطلاعات جدول را انتخاب و cut کنید در اینصورت جدول خالی خواهد شد سپس دیتابیس را compact and repair کنید و اگر به اطلاعات آن نیاز دارید اطلاعات را در داخل جدول paste کنید به این روش می توانید شماره گذاری را مرتب کنید (و اگر paste نکنید شماره گذاری را از صفر مجددا داشته باشید)

اگر هم جداول در فایل Back End قرار دارند به تاپیک تهیه بک آپ از بانک لینک شده (http://barnamenevis.org/showthread.php?386397-%D8%AA%D9%87%DB%8C%D9%87-%D8%A8%DA%A9-%D8%A2%D9%BE-%D8%A7%D8%B2-%D8%A8%D8%A7%D9%86%DA%A9-%D9%84%DB%8C%D9%86%DA%A9-%D8%B4%D8%AF%D9%87) ، پست 40# بروید در داخل فایل ضمیمه ماژولی به نام Modulecompact هست آنرا در فایل ّFront End خودتون قرار بدهید و تابع آنرا بوسیله قرار دادن در یک
command Button فراخوانی (اجرا ) کنید به این روش ادامه شماره گذاری مرتب می شود و اگر می خواهید از صفر شروع شود قبل از فراخوانی آن با دستورdelete مربوط به حذف رکوردها ، کل رکورد ها را ابتدا حذف کنید

موفق باشید


(http://barnamenevis.org/showthread.php?386397-%D8%AA%D9%87%DB%8C%D9%87-%D8%A8%DA%A9-%D8%A2%D9%BE-%D8%A7%D8%B2-%D8%A8%D8%A7%D9%86%DA%A9-%D9%84%DB%8C%D9%86%DA%A9-%D8%B4%D8%AF%D9%87)

saeed1234n
شنبه 25 خرداد 1392, 01:00 صبح
با سلام
دوست عزیز
یکی از راه حل ها برای مطلب مورد نظر شما از طریق کد نویسی است که می توانید از طریق کد زیر آنرا انجام دهید .
به این صورت که کد زیر را در رویداد click دکمه فرمان در خارج از فرم مربوطه قرار دهید :


DoCmd.RunSQL "ALTER TABLE [table_name] DROP COLUMN [field_name]"
DoCmd.RunSQL "ALTER TABLE [table_name] ADD COLUMN [field_name] autoincrement;"

بدین صورت که ابتدا فیلد autonumber حذف شده
و در مرحله بعدی فیلد autonumber صفر می شود .

com12151337
شنبه 25 خرداد 1392, 05:35 صبح
سلام جناب saeed1234n
راهی وجود دارد که هر بار بصورت خودکار autonumber صفر شود؟

saeed1234n
شنبه 25 خرداد 1392, 07:40 صبح
با سلام
دوست عزيز
فكر مي كنم بهترين كاري كه مي شود انجام داد قراردادن كد فوق در رويداد close فرم ميباشد .

Abbas Amiri
شنبه 25 خرداد 1392, 23:11 عصر
سلام
چطوري ميتونم فيلدي كه از نوع autonumber هست رو صفر كنم ؟

سلام

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

با این توضیحات اگر فیلد اتونامبر ایجاد کنیم و برایش هم دردسر بکشیم ، کار عبث است . بهتر اینه که نوع فیلد را Number بگیرید و در Default Value آن بنویسید

Nz(DMax("FieldName"; "TableName");0)+1

hamid-nice
یک شنبه 26 خرداد 1392, 22:05 عصر
سلام
بهتر اینه که نوع فیلد را Number بگیرید و در Default Value آن بنویسید

Nz(DMax("FieldName"; "TableName");0)+1
با سلام
عبارت شما را که وارد می کنیم syntax error می دهد لطفا بررسی فرمایید
با تشکر

Abbas Amiri
یک شنبه 26 خرداد 1392, 22:29 عصر
با سلام
عبارت شما را که وارد می کنیم syntax error می دهد لطفا بررسی فرمایید
با تشکر

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

hiyam-1370
سه شنبه 15 بهمن 1392, 15:07 عصر
Nz(DMax("FieldName"; "TableName");0)+1
دوستان وقتی این رو وارد میکنم میگه nz/dmax dose not exist in current context

farnaz330
شنبه 24 اسفند 1392, 14:54 عصر
Nz(DMax("FieldName"; "TableName");0)+1
دوستان وقتی این رو وارد میکنم میگه nz/dmax dose not exist in current context
این قسمت باید در Before Insert فرم در قسمت event نوشته شود