PDA

View Full Version : سوال: تبدیل دستور اس کیو ال به دستورات اکسس (اجرا از سی شارپ)



hojjatshariffam
چهارشنبه 29 اردیبهشت 1389, 15:17 عصر
بچه ها من می خوام این دستور رو تو اکسس اجرا کنم ولی کلی با اس کیو ال فرق داره
ببینید میشه تبدیلش کرد به زبان اکسس
توضیح : می خوام از طریق کد تو سی سارپ این اسکیو ال رو تو پایگاه داده اجرا کنم
وقتی پایگاه داده اسکیو ال سرور هست ، درست اجرا میشه
ولی وقتی پایگاه داده اکسس هست کلی خطا میده اولیشم واسه دستور if هستش




if( (SELECT Count ([ID])

FROM [Info_tbl]
where [Name]='Company_Name')<1)

insert into [Info_tbl]
VALUES
('Company_Name'
,NULL
,'abc'
,null
,null)
else

UPDATE [Info_tbl]
SET
[Value] = 'bca'

WHERE [Name] = 'Company_Name'


توضیح کد اسکیوال: اگه رکوردی در نتیجه دستور Select برگردونده نشه ، در اینصورت یک رکورد Insert میشه و اگه رکورد موجود باشه ، Update بشه

mazoolagh
چهارشنبه 29 اردیبهشت 1389, 16:23 عصر
یک چیزی شبیه این خواهد شد:


if dcount("id","info_tbl","name='" & company_name & "'") <1 then
docmd.runsql ("insert into .....")
else
docmd.runsql ("update ....")
endif

hojjatshariffam
چهارشنبه 29 اردیبهشت 1389, 22:30 عصر
یک چیزی شبیه این خواهد شد:


if dcount("id","info_tbl","name='" & company_name & "'") <1 then
docmd.runsql ("insert into .....")
else
docmd.runsql ("update ....")
endif

دوست من قرار نیست با خود اکسس کد بنویسم
قراره یه کوئری اسکیو ال بنویسیم که اکسس قبول کنه و از طریق OLDBCommand از داخل کد سی شارپ به اکسس فرستاده بشه .SQLCommand این کد رو قبول کی کنه ولی OLDBCommand قبول نمی کنه
مثلا دستور if رو کوئری اکسس نمیشناسه ولی اسکیو ال سرور قبول می کنه
می خوام همین کد رو طوری تغییر بدم که اکسس هم قبول کنه
آیا اصلا همچین چیزی امکان داره؟

مهدی قربانی
پنج شنبه 30 اردیبهشت 1389, 19:26 عصر
سلام
سئوالتون مربوط به بخش اکسس نمیشه ، در انجمن #C مطرح کنید .