SQL سوال در رابطه با

شروع موضوع توسط SNo ‏22 ژانویه 2007 در انجمن Visual Basic 6

  1. SNo

    SNo Registered User

    تاریخ عضویت:
    ‏18 ژانویه 2007
    نوشته ها:
    1,570
    تشکر شده:
    535
    محل سکونت:
    نوک قله دماوند
    صورت مسئله اينه كه :
    من دو تا tabel دارم (person , person_acc) كه يكي مربوط به مشخصات هر فرد و ديگري مربوط به سفارش هاي افراد ميباشد.
    و در هر دو جدول، دو فيلد مربوط به ميزان بدهي ( به اسم debt) و ميزان طلب ( به اسم credit) دارم .
    حالا من ميخوام با دستورات sql مجموع دو فيلد debt و credit از جدول person_acc رو براي هر فرد محاسبه كنم و داخل همان فيلدها از جدول person قرار بدم.
    در ضمن هر دو جدول يك فيلد هم به اسم person_ID دارند.

    يكي لطف كنه بگه كه چطور ميتونم اين كار رو انجام بدم .
     
  2. خدمات پی پالبازدیدیار - افزایش بازدید سایت و سیگنال های برند
  3. SNo

    SNo Registered User

    تاریخ عضویت:
    ‏18 ژانویه 2007
    نوشته ها:
    1,570
    تشکر شده:
    535
    محل سکونت:
    نوک قله دماوند
    من يك دستور Update query داخل ديتابيسم ذخيره كردم .
    حالا وقتي ميخوام با استفاده از Adodc اونو داخل VB6 اجرا كنم ، يك error ميده (متن پيغام : Operation is not allowed when the object is closed)
    البته بعد از اين پيغام ديتابيس update ميشه ولي ميخوام بدونم چكار كنم كه اين پيغام رو نده.
    براي توضيحات بيشتر هم بايد بگم كه موقع اجراي برنامه هم ديتابيس و هم برنامه اكسس رو مي بندم و ديتابيس پسورد هم ندارد.
    در ضمن من براي اجراي update query با Adodc اين كارا رو انجام ميدم :
    CommandType=adCmdStoredProc
    Recordsource=Update Query Name
    در هنگام اجراي برنامه
    Adodc1.Refresh

    اگه روش كارم اشتباهه لطف كنيد روش درستش رو بگيد.
     
  4. SNo

    SNo Registered User

    تاریخ عضویت:
    ‏18 ژانویه 2007
    نوشته ها:
    1,570
    تشکر شده:
    535
    محل سکونت:
    نوک قله دماوند
  5. SNo

    SNo Registered User

    تاریخ عضویت:
    ‏18 ژانویه 2007
    نوشته ها:
    1,570
    تشکر شده:
    535
    محل سکونت:
    نوک قله دماوند
  6. saeedsmk

    saeedsmk مدیر بازنشسته

    تاریخ عضویت:
    ‏6 سپتامبر 2003
    نوشته ها:
    1,519
    تشکر شده:
    4
    سلام
    خوب هستيد سئوال اولتون رو نفهميدم
    ببنيد ايا اين دو تا اي دي همان پراسمري كي هستند يا نه
    فرض كنيم باشند
    شما با دستور
    select * from person_acc where person_ID=" & userid"
    ميتونيد تمامي ريكورد هاي كه person_ID ان برابر userid است انتخاب كنيد و بعد با توليد يك حلقه مقادير credit و debt رو توي دو متغيير جدا جمع كرده و در اخر توي تيبل person بنويسيد
    اگر منظورتون فقط يك دستوره فكر نكنم همچين چيزي وجود داشته باشه . بايد با كد نويسي اين كار را بكنيد

    اما در مورد سئوال دوم
    فكر كنم شي Adodc به چيزي متصل است كه در نتيجه هنگام به روز سازي چون براي لحظه اي ريكوردست قفل شده و بد از اپديت دوباره از حالت قفل در ميايد اين مشكل ايجاد ميشود
    فكر كنم اگر از طريق كد نويسي به ديتا بيستون وصل بشيد مشكلتون حل ميشه

    اميدوارم كمك كنه
     
  7. SNo

    SNo Registered User

    تاریخ عضویت:
    ‏18 ژانویه 2007
    نوشته ها:
    1,570
    تشکر شده:
    535
    محل سکونت:
    نوک قله دماوند
  8. rouzbeh_ziafati

    rouzbeh_ziafati Registered User

    تاریخ عضویت:
    ‏17 دسامبر 2006
    نوشته ها:
    165
    تشکر شده:
    5
    محل سکونت:
    همدان
    کمک !!!
    آقا من این دستور رو نوشتم : در dbgrid و با شئی data درست کار میکنه و رکوردها رو پیدا میکنه .
    Data1.RecordSource = "select * from car where name like ('* + Text1.Text + *') and family like ('* + Text7.Text + *') "
    Data1.Refresh

    اما همین دستور با datagrid و شئی adodc کار نمیکنه !!! و هیچ رکوردی رو پیدا نمیکنه
    کسی می دونه چرا ؟؟؟
    Adodc1.RecordSource = "select * from car where name like ('*" + Text1.Text + "*') and family like ('*" + Text7.Text + "*') "
    Adodc1.Refresh
     
    Last edited: ‏6 فوریه 2009
عسل طبیعی و گرده گل ایرانی