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

نام تاپیک: اشکال در Transaction

  1. #1

    اشکال در Transaction

    میخوام از Transaction استفاده کنم
    ولی:
    1. sqlComand داخل یک کلاس به صورت private است و در تیجه واسه transaction هم باید داخل همین کلاس عملیات انجام بشه

    2.عملیات به طور کل درست انجام می شه ولی وقتی با trace پیش می رم و وسط کار برنامه رو نگه می دارم تعدادی از Query ها ثبت می شه و RollBack نمی خوره

    مرسی

  2. #2
    عملیات به طور کل درست انجام می شه ولی وقتی با trace پیش می رم و وسط کار برنامه رو نگه می دارم تعدادی از Query ها ثبت می شه و RollBack نمی خوره
    اگه شما از sqlcommand استفاده میکنی که موقع trace کردن همینکه به executenonequery میرسه اجرا میشه. بقیه اش برمی گرده به صحیح بودن transaction شما.
    فکر می کنم بهتره از تویquery analyzer چک کنید ببینید آیا transaction شما صحیح کار میکنه یا خیر.

  3. #3
    از پاسختون ممنونم اما نمی فهمم این مشکل فقط مربوط به sqlcommand هست؟ پس با این حساب اگه کسی از sqlcommand استفاده کنه و وسط کار ارتباطش با Server قطع بشه که به مشکل بر میخوریم
    البته این رو هم بگم که وقتی RollBack میخوره عملیات انجام نمیشه و در طول اجرای برنامه و تو حالتی که هنوز transaction بر قرارهست اجازه Qureyو.. نمیده ولی اگه یهو ارتباط رو قطع کنم به مشکل بر می خوریم.

  4. #4
    از پاسختون ممنونم اما نمی فهمم این مشکل فقط مربوط به sqlcommand هست؟ پس با این حساب اگه کسی از sqlcommand استفاده کنه و وسط کار ارتباطش با Server قطع بشه که به مشکل بر میخوریم
    ببینید sqlcommand مشکلی نداره. کاری که اینجا برای شما انجام میده اینه که کوئری شما رو اجرا کنه.حالا اگه مثلا در همین لحظه ارتباط با سرور قطع بشه این دیگه کار transaction شما ست که مشکل رو هندل کنه.
    در واقع یک transaction اینو میگه که کل اسکریپت داخل transaction یک موجودیت واحد هست یعنی یا کامل انجام میشه و یا اصلا انجام نمیشه. و اگه شما اسکریپتت رو انینطوری نوشته باشی که در صورت برخورد با ارور rollback بشه یعنی هیچ یک از اسکریپت های این transaction شما انجام نشه.

    حالامشکل شما کجای کار هست؟ توضیح بیشتر بدید لطفا...

  5. #5
    من چهار Query دارم:
    1. قبل از اجرای Queryها یک کلاس دارم که اینsqlcommandدر اون به صورت Private قرارداره و برای اجرای این Query ها از روتینهای همین کلاس استفاده می کنم:
    Sqlcomand.Transaction=Trans
    2.شروع به اجرا از طریق Trace میکنم 3 تا از این 4 Query رو ردیف به ردیف اجرا می کنم قبل از اینکه چهارمی اجرا بشه برنامه رو نگه میدارم و Run رو قطع می کنم ولی 3 تا Queryدر سیستم ثبت می شه.
    3. قبل از شروع این پروسه BeginTransaction رو انجام میدم و Comit و RollBack هم در جای مناسب خودشون هستن.
    4. وقتی برنامه در خالت عادی به مشکلی بر میخوره کاملا درست RollBack آنجام میشه ولی...

  6. #6
    کدت رو بذاراینجا تا معلوم بشه مشکل چیه.
    این مثال رو هم نگاه کن. روال کار شما باید یه چیزی شبیه به این باشه:
    http://www.sql-server-performance.co...ctions_p1.aspx

  7. #7
    در اولین فرصت

تاپیک های مشابه

  1. پیغام Transaction Cannot ......
    نوشته شده توسط nashkani در بخش SQL Server
    پاسخ: 2
    آخرین پست: سه شنبه 06 بهمن 1388, 12:00 عصر
  2. خطا در ثبت اطلاعات توسط transaction
    نوشته شده توسط hasti.lm در بخش ASP.NET Web Forms
    پاسخ: 4
    آخرین پست: سه شنبه 18 دی 1386, 19:58 عصر
  3. سوال در مورد transaction
    نوشته شده توسط miladr در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: سه شنبه 18 دی 1386, 10:26 صبح
  4. سیستم سه لایه - استفاده از Transaction
    نوشته شده توسط Mrs.Net در بخش C#‎‎
    پاسخ: 1
    آخرین پست: دوشنبه 05 آذر 1386, 09:43 صبح

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

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