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

نام تاپیک: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    ایران
    پست
    98

    بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    سلام
    من توي پايگاه داده يه جدول دارم كه اطلاعات اين جدول در دو فرم جداگانه از كاربر
    گرفته مي شود. اين جدول يه فيلد به نام ID داره كه از نوع AutoNumber است. در مرحله اول ثبت اطلاعات مشكلي نيست يه رديف جديد توي جدول ايجاد ميشه و اطلاعات ثبت ميشه ولي براي فرم دوم چطور مي تونم ID همون رديف رو بدست بيارم و بگم كه اين اطلاعات بايد توي همون رديف قبلي ثبت شود؟

  2. #2

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    سلام دوست عزیز ، منظورت رو دقیقا متوجه نمیشم ...مگه شما اطلاعات رو به یک باره وارد نمیکنید؟؟؟ اگه شما میخوای در یک فرم اطلاعات نصف اطلاعات ثبت بشه و در فرم دیگه بقیه ی اطلاعات ثبت بشه احتمالا باید از UpdateCommand استفاده کنید..بیشتر توضیح بدین تا دوستان راهنمایی کنند.

    موفق باشین.

  3. #3
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    http://hamdsoft.ir
    پست
    350

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    با سلام
    منظورت رو كه دقيقا نفهميدم ولي فكر مي كنم مي خواهي ID ركوردي رو كه به صورت AutoNumber تازه اضافه شده رو بدست بياري و الباقي كار
    براي اين كار در موقع درج ركوردت مي توني يك دستور به آخر اون اضافه كني تا ID‌ ركوردي كه به صورت AutoNumber اضافه شده رو بهت بده
    به اين صورت:
    insert into tb1(fileds) values (MyValue);Select SCOPE_IDENTITY() AS MyID 

  4. #4
    کاربر دائمی آواتار M.YasPro
    تاریخ عضویت
    آبان 1386
    محل زندگی
    Kernel
    پست
    1,171

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    سلام
    کد زیر بعد از اجرا شدن یک دستور Insert مقدار فیلد autoNumber رو که در رکورد جدید استفاده شده ، بر میگردونه.
    حالا شما میتونی این شماره رو دریافت کنی و به فرم دوم ببری و با این شماره رکورد هدف رو ویرایش کنی .

    Insert Into bid
    (fileds)
    Values
    (values)
    Declare @ReferenceID int
    Select @ReferenceID = @@IDENTITY

    Return @ReferenceID


    موفق باشید ./

  5. #5
    کاربر تازه وارد
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    ایران
    پست
    98

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    ببخشید میشه بیشتر راهنمایی کنید. این دستورها رو باید کجا بیارم؟ من دستور insert رو اینطوری نوشتم:
    "(insert into tablename ([fname],[lname]) values(@fname,@lname"
    دستور گرفتن مقدار ID رو باید توی دستور insert بالا بیارم یا یه دستور جدای دیگه بعد از اجرای متد ExecuteNonQuery که داده ها رو ثبت میکنه؟

  6. #6
    کاربر دائمی آواتار M.YasPro
    تاریخ عضویت
    آبان 1386
    محل زندگی
    Kernel
    پست
    1,171

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    (insert into tablename ([fname],[lname]) values(@fname,@lname    
    Declare @ReferenceID int
    Select @ReferenceID = @@IDENTITY

    Return @ReferenceID


    توی پروژتون هم یک پارامتر برای برگرداندن ایم مقدار درنظر بگیرید مثل این :
      cmd.Parameters.Add("@ReferenceID", SqlDbType.Int).Direction = ParameterDirection.ReturnValue;

    بعد
             cmd.ExecuteNonQuery();

    و در اخر برای دسترسی به مقدار برگردانده شده از :
                    int id = int.Parse(cmd.Parameters["@ReferenceID"].Value.ToString());

    استفاده می کنید .

    موفق باشید ./

  7. #7
    کاربر تازه وارد
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    ایران
    پست
    98

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    به متد cmd.ExecuteNonQuery(); كه ميرسه خطا ميده:
    System.Data.OleDb.OleDbDataAdapter internal error: invalid parameter accessor: 11 BADBINDINFO.
    دستور insert رو به همون صورتي كه گفتيد نوشتم ولي خطاي بالا داده ميشه. در ضمن پايگاه داده ي من Access هست.

  8. #8
    کاربر دائمی آواتار M.YasPro
    تاریخ عضویت
    آبان 1386
    محل زندگی
    Kernel
    پست
    1,171

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    متاسفانه من روی دیتابیس sqlserver توضیح دادم نمیدونم روی access رو نظری ندارم .

  9. #9

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    سلام دوست عزیز ،

    شما در روی فرمتون دیتا گرید ویو گذاشتین؟؟ یعنی وقتی که اطلاعات ثبت میشه دیتا گرید ویو نشونش میده؟؟

  10. #10
    کاربر تازه وارد
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    ایران
    پست
    98

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    نه ديتاگريد ندارم. توي فرم اول تعدادي TextBox دارم كه مي خوام وقتي كاربر دكمه مرحله بعد رو مي زنه اطلاعات توي جدول ثبت بشه و فرم دوم باز بشه و وقتي دكمه ثبت اطلاعات توي فرم دوم زده مي شود اطلاعات TextBox هاي فرم دوم در ادامه جدول ثبت شود، مشكلم اينجاست كه نمي تونم ID رديفي كه اطلاعات فرم اول توي اون ثبت شده رو بدست بيارم تا اطلاعات فرم دوم رو توي همون رديف ذخيره كنم؟
    آخرین ویرایش به وسیله daneshmand1 : دوشنبه 05 دی 1390 در 19:49 عصر

  11. #11
    کاربر تازه وارد
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    ایران
    پست
    98

    نقل قول: بدست آوردن مقدار فيلدهاي از نوع AutoNumber

    دوستان خواهش ميكنم كمك كنيد پروژه من متوقف شده، نياز فوري دارم!

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

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