ورود

View Full Version : سوال: ایراد در لیبل ها در SQL و ADO در دلفی



homayoon_fara
شنبه 13 تیر 1388, 15:12 عصر
با سلام
من این تکه کد SQL رو که با ADO از داخل دلفی اجرا می کنم ، error میده



BEGIN TARANSACTION
insert into MyTabel1(name,code) values('ali',17)
if (@@ERROR <> 0) goto on_error
COMMIT TRANSACTION
goto on_continue

on_error:
ROLLBACK TRANSACTION
on_continue:

متن error اینه:
"Parameter object is improperly defined. Inconsistent or incomplete information was provided."

اما دقیقا همین کد رو که در Query Analyzer اجرا می کنم بدون هیچ ایرادی اجرا میشه.
کلی زیرو روش کردم دیدم که ایراد از لیبل هاست. on_error و continue. تو دلفی، میگه اینا تعریف نشدن. حالا من نمیدونم چی کار کنم.
کسی از دوستان میدونه؟

homayoon_fara
یک شنبه 14 تیر 1388, 09:47 صبح
یعنی هیچ کس نمیدونه؟

shervin farzin
یک شنبه 14 تیر 1388, 15:47 عصر
سلام
در رشته اي كه شما در دلفي به عنوان كد SQL مينويسيد ، اگر از كاركتر : استفاده كرده باشيد
يعني يك پارامتر معرفي كرديد. كد شما در 2 جا از كاركتر : استفاده كرده كه البته منظورتون معرفي
پارامتر نبوده كه به اين ترتيب سوء تفاهم پيش اومده .
براي رفع اين سوء تفاهم بايد بنويسيد :: تا مفهوم پارامتر از بين بره .

begin transaction
insert into MyTabel1(name,code)values('ali',17)
if (@@ERROR <> 0) goto on_error
commit transaction
goto on_continue
on_error::
rollback transaction
on_continue::
select 'its OK'
موفق باشيد.

homayoon_fara
شنبه 20 تیر 1388, 13:11 عصر
سلام
در رشته اي كه شما در دلفي به عنوان كد SQL مينويسيد ، اگر از كاركتر : استفاده كرده باشيد
يعني يك پارامتر معرفي كرديد. كد شما در 2 جا از كاركتر : استفاده كرده كه البته منظورتون معرفي
پارامتر نبوده كه به اين ترتيب سوء تفاهم پيش اومده .
براي رفع اين سوء تفاهم بايد بنويسيد :: تا مفهوم پارامتر از بين بره .

begin transaction
insert into MyTabel1(name,code)values('ali',17)
if (@@ERROR <> 0) goto on_error
commit transaction
goto on_continue
on_error::
rollback transaction
on_continue::
select 'its OK'
موفق باشيد.

--------------------------

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