PDA

View Full Version : مشکل در SQL و ارسال پارامتر ؟؟



SRNOURI
شنبه 22 مهر 1385, 11:38 صبح
دوستان سلام
من می خواهم با استفاده از یک Query و دستورات SQL اقدام به تغییر محتویات یک رکورد کنم البته با شرط خاصی . به طور مثال :


Update from personal
Set name=’Hasan’
Where code like:params[0];



این دستوراتی که در SQL قرار می دهم و اجرا می کنم اما مشکل اینجا است که می خواهم رشته ‘HASAN’ متغییر بوده و از خارج از SQL به صورت پارامتر ارسال شود .فرمتهای زیر را امتحان کردم اما با Error مواجه شدم و SQL اجرا نشد . از دوستانی که در این زمینه تجربه ای دارند لطفاً منو راهنمایی کنند.



Update from personal
Set name=params[0] :ERROR
Where code like:params[1];


Update from personal
Set name like:params[0] :ERROR
Where code like:params[1];

sarvestan
شنبه 22 مهر 1385, 12:09 عصر
Update from personal
Set name=params[0]
Where code like:params[1];
کد دوم که کلا محل اشکال است زیرا :
نمیشود در هنگام اختصاص مقدار از Like استفاده کرد!

در مورد کد اول هم :
اولا Update From بدردت نمیخوره!
from رو در Query باید حذف کنی!

دو نقطه param[0] هم فراموش نشود

SRNOURI
شنبه 22 مهر 1385, 14:11 عصر
ممنون از راهنمایتون اما میشه یه فرمت درست برای ارسال یه متغییر به جای رشته Hassan که در کد اولی گفتم برام بنویسید.ممنون میشم.

mzjahromi
شنبه 22 مهر 1385, 14:18 عصر
Update personal
Set name=:X
Where code like :Y

sarvestan
شنبه 22 مهر 1385, 14:29 عصر
with ADOQuery1 do
begin
SQL.Text := 'Update categories Set categoryname= :k Where categoryname like :d ';
Parameters.ParamByName('k').Value:= '543453';
Parameters.ParamByName('d').Value:= '%ffff';
Prepared:=True;
ExecSQL;
end;

SRNOURI
یک شنبه 23 مهر 1385, 11:53 صبح
از دوستان عزیزی که منو راهنمایی کردن و به حل مشکل کمکم کردن تشکر میکنم.
دستتون درد نکنه.