نمایش نتایج 1 تا 14 از 14

نام تاپیک: مشکل Autonumber

  1. #1

    مشکل Autonumber

    من یه برنامه نوشتم با دیتا بیس َاکسس حلا میخوام ستون دیتا iD دردیتا گرید ویو خودکار عدد بگیره واگر یه ردیف هم پاک کردم ستونم عدد مشکل پیش نیاد لطفا کمک کنید

  2. #2

    نقل قول: مشکل Autonumber

    خصوصیت identity specificatin فیلد id رو برابر yes کنید.

  3. #3

    نقل قول: مشکل Autonumber

    نقل قول نوشته شده توسط ma.rad مشاهده تاپیک
    خصوصیت identity specificatin فیلد id رو برابر yes کنید.
    دوست عزیز بانکش اکسسه نه اس کیو ال در ضمن اگه Autonumber باشه هم وقتی که رکوردی رو حذف میکنه دیگه رکوردهای بعدی اون شماره رو ندارن.

    منم همین مشکل رو دارم از دوستانی که قبلا این مشکل رو حل کردن خواهش میکنم راه حل این مسئله رو بگن.

  4. #4

    نقل قول: مشکل Autonumber

    اگر اکسس هم هست که خیلی راحتتره فیلد رو از نوع auto number بزار
    *********
    شما با مفهوم AutoNumber درست آشنا نشدید وقتی به یک رکورد یه شمازه اختصاص داده می شه اون رو منحصر به فرد می کنه و یه کلید محسوب می شه ونمی شه دوباره با حذف یه شماره شماره ها مرتب بشن چون کلید یه رکورد مختص همون رکورده
    راه حل :
    شما یه ستون اضافه کنید به دیتاگریدتون و زمانی که اطلاعات بایند میشه تو گرید یه حلقه بزارید که به تعداد رکوردهای دیتاتیبل عدد بریزه تو ستون ردیف.

  5. #5

    نقل قول: مشکل Autonumber

    دوست عزیز میدونم که اون فیلدی که از نوع Autonumber هست خودش میشه فیلد کلیدی چون واسه هر رکورد عددی منحصر به فرد تولید میکنه ولی فکر نمیکنم راه حل شما منطقی باشه چون فکرش رو بکنین ممکنه که مثلا 5000 (یا حتی بیشتر !) رکورد داشته باشیم اونوقت با دستور For یه کم وقت میبره ممکنه قابل چشم پوشی باشه ولی فکر نمیکنم از لحاظ منطقی درست باشه ، منم واسه این سوال پرسیدم گفتم شاید بشه داخل بانک اینکارو انجام داد و از دستور For دیگه استفاده نشه. باز هم ممنون از لطفتون.

  6. #6

    نقل قول: مشکل Autonumber

    احتمالا شما تازه شروع به برنامه نویسی کردید
    راحل حلی که گفتم بنظرم بهترین وسریع ترین راهه- شایدهم تنهاراه باشه
    و برا همچین کاری اصلا زمان مطرح نیست

  7. #7
    کاربر تازه وارد آواتار ATili.Nero
    تاریخ عضویت
    آذر 1388
    محل زندگی
    رامسر
    سن
    31
    پست
    30

    نقل قول: مشکل Autonumber

    یه راه دیگه هم هست من خودم از این روش استفاده می کنم
    این روش دیگه Auto Number رو از بانکت انتخاب نمی کنی بلکه خودت با کد نویسی Auto Number رو درست می کنی
    اول از همه اطلاعات رو از بانک توی یه دیتا گیرید به صورت Order By ID می ریزیم
    خب اگه گرید ویو هیچی نباشه یعنی اولین داده است پس کد ما 1
    اگه هم وجود داشت آخرین مقدار رو + 1 می کنیم و کد جدید به ما داده میشه

    کدش هم براتون می زارم من خودم از این روش استفاده می کنم


    if (dataGridView2.Rows.Count.ToString() == "0")
    {
    textBox_code_car.Text = "1";

    }
    else
    {
    for (int Counter = 0; Counter < (dataGridView2.Rows.Count); Counter++)
    {
    if (dataGridView2.Rows[Counter].Cells["Code_Car"].Value != null)
    {
    if (dataGridView2.Rows[Counter].Cells["Code_Car"].Value.ToString().Length != 0)
    {
    textBox_code_car.Text = (int.Parse(dataGridView2.Rows[Counter].Cells["Code_Car"].Value.ToString()) + 1).ToString();
    }
    }
    }
    }

  8. #8

    نقل قول: مشکل Autonumber

    این روش غیر معمول هست ومرتبه زمانی اون بیشتر از روش اوله
    موفق باشید

  9. #9
    کاربر دائمی آواتار sds1920
    تاریخ عضویت
    تیر 1388
    محل زندگی
    اصفهان
    سن
    34
    پست
    483

    نقل قول: مشکل Autonumber

    شما اگه فقط میخوای توی دیتاگریدویو یک Autonumber داشته باشی باید یک فیلد به جدول در دیتاست برنامه اضافه کنی که این خاصیت رو داشته باشه.

    DataTable1.Columns.Add("FieldName",typeof(int));
    DataTable1.Columns["FieldName"].AutoNumber=true;

  10. #10
    کاربر دائمی
    تاریخ عضویت
    دی 1387
    پست
    389

    نقل قول: مشکل Autonumber

    سلام دوست عزیز شما تو بانک قصد دارید که ردیف به صورت ترتیبی و صعودی باشه که اتونامبر گزینه خوبیه حالا مسکل چیه؟
    اینه که وقتی جدول خالی میشه رکورد جدید از انتهای رکورد حذف شده شروع میشه؟
    خود تو برنامه خودتون Max(id) رو بگیرید بعلاوه 1 بکنید
    اما آخرین مورد وقتش نشده به سمت sql برید اکسس چی داره بهش گیر دادید

  11. #11

    نقل قول: مشکل Autonumber

    نقل قول نوشته شده توسط gerdioz مشاهده تاپیک
    سلام دوست عزیز شما تو بانک قصد دارید که ردیف به صورت ترتیبی و صعودی باشه که اتونامبر گزینه خوبیه حالا مسکل چیه؟
    اینه که وقتی جدول خالی میشه رکورد جدید از انتهای رکورد حذف شده شروع میشه؟
    خود تو برنامه خودتون Max(id) رو بگیرید بعلاوه 1 بکنید
    اما آخرین مورد وقتش نشده به سمت sql برید اکسس چی داره بهش گیر دادید
    سلام ، اون در صورتیه که کل رکورد ها حذف بشن ولی اگه رکوردی بین دو رکورد حذف بشه اونوقت چی؟ با دستور Max که دیگه نمیشه.دوست عزیزه بالایی یک راه حل گفتن (استفاده از For ) ولی میگم شاید راه حل بهتری هم وجود داشته باشه.

  12. #12
    کاربر دائمی
    تاریخ عضویت
    دی 1387
    پست
    389

    نقل قول: مشکل Autonumber

    شما اگه رکورد کلید اصلی نباشه و به جایی رابطه نداشته باشه آره راه بهتری هست
    نگاه کن مثلا شما ردیف 1 و 2 و 3 4 دارید حالا ردیف 2 حذف میشه شما علاوه برحذف باید آخرین رکورد رابجای رکورد 2 بیارید البته یه روشه
    اما تو سیستم های امروزی روش حلقه خوبه حتی رکوردهای زیادم داشته باشی محسوس نیست و منروش دوست عزیزمون رو تائید میکنم

  13. #13
    کاربر تازه وارد آواتار ATili.Nero
    تاریخ عضویت
    آذر 1388
    محل زندگی
    رامسر
    سن
    31
    پست
    30

    نقل قول: مشکل Autonumber

    نقل قول نوشته شده توسط ma.rad مشاهده تاپیک
    این روش غیر معمول هست ومرتبه زمانی اون بیشتر از روش اوله
    موفق باشید
    چرا؟؟؟
    یه کم توضیح بدید

  14. #14

    نقل قول: مشکل Autonumber

    نقل قول نوشته شده توسط ATili.Nero مشاهده تاپیک
    چرا؟؟؟
    یه کم توضیح بدید
    همین که این کد شما چند تا شرط داره سرعتش نسبت به کده دوستمون کمتره چون کد اون میاد بدون شرط سلول های یک ستون رو پر میکنه ولی کد شما اول چک میکنه بعد پر میکنه. ((البته به چشم نمیاد چون CPU ها قوین ))

    موفق باشید./

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •