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

نام تاپیک: ذخیره اطلاعات در دیتابیس

  1. #1

    ذخیره اطلاعات در دیتابیس

    سلام.
    من میخوام وقتی که اطلاعات وارد یک editbox کردم بعد از زدن دکمه ای اونو وارد دیتابیس بکنم.
    خودم از این کد استفاده کردم.
    adotable1.fieldbyname('no_factor').value := edtfano.text;

    حالا مشکل اینجاست که پیغام میده دیتابیس در حالت ادیت نیست.
    میام قبلش اونو باز میکنم و سپس این کد رو مینویسم
    adotable1.edit;

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

  2. #2
    ببین مهندس
    قاعدتا نباید ایراد بگیرد
    ولی اگر بازهم مشکل داشتی من یک راه دیگه پیشنهاد می کنم
    که البته مثل راه خودت است
    (((توی پرانتز بگم بهت که چک کرده ای که آیا دیتابست در ویندوز در حالت read only نباشد , می دونی که در property خود فایل منظورم است , اگر اونجا به حالت فقط خواندنی باشد این ایراد را می گیرد البته من توسط کد بلد نیستم که از حالت read only خارج کنم , اساتید محترم هرکی بلده بگه)))))
    و اما راه اینه که روی adotable کلیک راست کن و field editor را انتخاب کن و در صفحه ای که باز می شود دوباره کلیک راست کن و add all را بزن حالا به جای کد خط اولی که نوشته ای اینجوری بنویس
    adotable1.open;
    adotable1.edit;
    adotable1no_facto.asstringr:= edtfano.text;
    adotable1.post;

    فکر کنم درست بشه
    البته روش خودت هم جواب می ده
    پرانتز را بررسی کن و ببین چطوریه :flower:

  3. #3
    دستت درد نکنه حالا اینم تست میکنم. :sunglass:

  4. #4
    مهمان
    edit برا وقتی است که شما میخوای یک رکورد رو ویرایش کنید برای اضافه کردن باید از متد insert یا apend استفاده نمایید . البته خطا مربوط به آن نیست این رو برای این نوشتم که گفتی میخوای رکورد اضافه کنی .
    برای خطای مربوطه متن آن را بنویسید .

    :موفق:

  5. #5
    VIP آواتار hr110
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    1,460
    قبل از ویرایش رکورد باید با اسفاده از متدهایی شبیه به Locate کنترل را به رکورد مورد نظر انتقال بدهید ، من فکر میکنم خطایی که شما با آن مواجه هستید به این دلیل باشد.
    ضمناً هیچگاه از Value. استفاده نکنید :موفق:
    ... چه بگویم که غم از دل برود چون تو بیایی

  6. #6
    دو تا پیشنهاد دارم :
    1).به دلیل داشتن قابلیت های بیشتر برایqueryو محدودیت های کمتر بهتر است به جای tadotable از tadodataset
    2)به جای نوشتن:
    adotable1.fieldbyname('no_factor').value := edtfano.text
    به صورت:
    adotable1.fieldbyname('no_factor').asstring:= edtfano.text(بستگی به نوع داده از:asstring or asinteger or .....استفاده نمائید.
    موفق باشید. :)

  7. #7
    کاربر دائمی آواتار javidtaheri
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran
    پست
    301
    دوست عزیز
    1-این کاری که میکنی رکورد جاری را ویرایش میکند و یا اگر جدول خالی باشد یک رکورد اضافه میکند و با این دستور جدولت همیشه یک رکوردی است
    2- بهتر است از Insert استفاده کنی
    3- error خودت را اینجا بنویس شاید مشکل از ایندکس باشد
    4- این دستور چی ؟ خطا میده؟ i = شماره فیلد جدول adotable1.fields[i].Text:= edtfano.text;
    :kaf:

  8. #8
    کاربر دائمی آواتار javidtaheri
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran
    پست
    301
    فیلد مذکور نکنه که Text نباشه

  9. #9
    لطفا کد کامل خطا را بنویس

  10. #10
    کاربر تازه وارد
    تاریخ عضویت
    آبان 1383
    پست
    77
    در ضمن اگر می خواین با Text مربوط به Edit کار کنید بهتره از function زیر استفاده کنین
    Trim()

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

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