PDA

View Full Version : مبتدی: نحوه دسترسی به Stored Procedure توسط Datasnap



tomalaki
چهارشنبه 21 فروردین 1392, 22:34 عصر
خب دوستان عزیز،
در ادامه پروژه تجاری (یعنی پول توشه) که دارم، پایگاه داده رو تحلیل کردم و همه ی کوئری های لازم رو توسط procedure ها توی MySQL ذخیره کردم.

حالا چیزی که اینجا برام پرسش هست اینه که چطور میشه به این Stored Procedureها از طریق Datasnap دسترسی داشت؟ ضمنا این پروسیجرها بعضی هاشون پارامتر دارن و بعضی هاشون هم مقدار بر میگردونن.

ببخشید که سوال زیاد مبتدی هست. بالاخره 20 روز هست که به صورت جدی به دلفی و برنامه نویسی روی آوردم.

tomalaki
دوشنبه 26 فروردین 1392, 12:23 عصر
خب، بعد از مدت ها یه راهی به ذهنم رسید که عملی هم شد و اینجا هم براتون میذارم.
ابتدا آموزش http://edn.embarcadero.com/article/41176 رو بخونید. وقتی خوب یاد گرفتید، همین مراحل که توی آموزش اومده رو طی کنید. فقط توجه داشته باشید توی اون پنجره که سه تا گزینه از بین ancector ها باید انتخاب کنید، گزینه ی TDSServerModule انتخاب کنید. برای ارتباط سرور Datasnap با پایگاه داده باید از این گزینه استفاده کنید(شاید راه های دیگه هم باشه). بعد بقیه مراحل طی کنید.

توی ServerMethodsUnit1 کامپوننت های firedac از قبیل ADPhysMySQLDriverLink و ADGUIxWaitCursor و ADConnection و ADStoredProc قرار بدید و اتصالات مربوطه رو برقرار کنید. حالا یه متد با توجه به اینکه procedure ذخیره شده توی پایگاه داده تون مقدار بر میگردونه یه نه بنویسید. حالا تنها کافی هست که توی برنامه کلاینت اون متد رو فراخونی کنید و تمام :)

اگه کسی متوجه نشد و نیاز داشت بگه تا کامل بذارم.
با تشکر

tomalaki
سه شنبه 27 فروردین 1392, 00:07 صبح
البته خب این روش تنها برای procedure هایی هست که ردیف پایگاه داده بر نمیگردونن. این روش برای دریافت تک اطلاعات به درد بخور هست. در مورد دریافت اطلاعات به صورت ردیف های پایگاه داده کسی بلده راهنمایی کنه؟

tomalaki
سه شنبه 27 فروردین 1392, 00:30 صبح
خب اینم یه راهنمای خیلی خوب:
http://devzone.advantagedatabase.com/dz/content.aspx?Key=42&ID=76
:لبخند:

hp1361
سه شنبه 27 فروردین 1392, 11:05 صبح
سلام

به نظر من برای شروع و آشنایی بیشتر با Datasnap، خواندن آموزش های آقای Pawel Glowacki خیلی کار راه اندازه.

http://gp.embarcadero.com/authors/edit/3956.aspx

برای خواندن هر موضوع بر روی دکمه 102897 کلیک کنید

موفق باشیم