View Full Version : مشکلی با دستور INSERT INTO
kheyri
سه شنبه 01 اسفند 1385, 08:04 صبح
سلام دوستان
برای اضافه کردن رکورد به یک Table در SQLSERVER از دستور INSERT INTO استفاده میکنم مشکل من اینجاست که در قسمت VALUES نمیشه از متغیر یا پروپرتی برای پر کردن فیلدها استفاده کرد. اگر ممکنه منو راهنمائی کنید که چطوری مقدار یک Edit1.Text رو در VALUES عمل کرد.
ممنون
حمیدرضاصادقیان
سه شنبه 01 اسفند 1385, 08:24 صبح
دوست عزیز چرا نمیشه .
به این صورت میتونی بنویسی.
' insert into f_sanad_doc (sanad,doc) values('+DmAdo.aspEveryThing.FieldByName('sanad'). AsString+','''+formmain.Memo1.Text+''')'
kheyri
سه شنبه 01 اسفند 1385, 08:54 صبح
ممنونم از راهنمائیتون . فکر کنم بهتره کد مربوطه رو اینجا بذارم تا زحمت بکشید ببینید اشکال کار من در کجاست :
dm.adq1.SQL.Clear;
tt:='insert into basicinfo(parent, hoze, shobe, name) values(dm.adq3.fieldbyname('parent').value, 0,strtoint(edit1.text),N'''+edit2.Text+''')';
dm.adq1.SQL.Text:=tt;
dm.adq1.ExecSQL;
لازم بذکر هست که فیلدهای parent, Hoze وshobe از نوع عددی هستند و name از نوع text
وقتی برنامه کمپایل میشه این ارور رو میده : Missing operator or semicolon
حمیدرضاصادقیان
سه شنبه 01 اسفند 1385, 14:28 عصر
باید به این شکل بنویسی
dm.adq1.SQL.Clear;
tt:='insert into basicinfo(parent, hoze, shobe, name) values('+dm.adq3.fieldbyname('parent').value+', 0,'+strtoint(edit1.text)+',N'''+edit2.Text+''')';
dm.adq1.SQL.Text:=tt;
dm.adq1.ExecSQL
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.