ایجاد، خواندن، روزآمدی و حذف: تفاوت میان نسخهها
تعریف کامل گردید. |
بدون خلاصۀ ویرایش |
||
خط ۵۵: | خط ۵۵: | ||
== انواع دیگر == |
== انواع دیگر == |
||
دیگر انواع CRUD شامل: |
دیگر انواع CRUD شامل: |
||
* BREAD: browse, read, edit, add, delete<ref>{{Cite web|year=2008|title=BREAD, not CRUD|author=Paul M. Jones|url=http://paul-m-jones.com/archives/291}}</ref> |
|||
* DAVE: delete, add, view, edit<ref>{{cite book|last1=McGaw|first1=James|title=Beginning Django E-Commerce|date=21 June 2010|page=41|isbn=9781430225362|url=https://books.google.com/books?id=LwO1GzMN_QsC&q=DAVE&pg=PA41}}</ref> |
|||
* CRAP: create, replicate, append, process<ref>{{Cite news|url=https://blog.dellemc.com/en-us/crap-and-crud-from-database-to-datacloud/|title=CRAP and CRUD: From Database to Datacloud - Direct2DellEMC|date=2012-11-13|work=Direct2DellEMC|access-date=2018-01-30|language=en-US}}</ref> |
|||
== جستارهای وابسته == |
== جستارهای وابسته == |
نسخهٔ ۸ نوامبر ۲۰۲۰، ساعت ۰۸:۲۷
ایجاد، خواندن، روزآمدکردن[۱] (بهروزرسانی) و حذف (به انگلیسی: Create, read, update and delete) که به اختصار (CRUD) نیز خوانده میشوند؛ چهار عملکرد اساسی ذخیره ماندگار هستند.[۲] ممکن است از واژه های جایگزین در زمان تعریف چهار تابع اساسی CRUD استفاده شود، مثل «بازیابی (به انگلیسی: retrieve)» به جای خواندن، و تغییر (به انگلیسی: modify) به جای روزآمدکردن، و تخریب (به انگلیسی: destroy) به جای حذف. گاهی از واژه CRUD برای توصیف قراردادهای واسط کاربری که دیدن، جستجو، و تغییر اطلاعات را سادهسازی می کنند، استفاده می شود، که این کار معمولا از طریق فرمها و گزارش های کامپیوتری انجام می شود. این اصطلاح احتمالا اولین بار توسط جیمز مارتین در کتاب سال 1983 ایشان به نام «مدیریت محیط پایگاه داده» رواج یافته است.[۳][۴] این واژه مخفف شده گاهی به CRUDL گسترش می دهند تا «لیست کردن (به انگلیسی: listing)» دیتاست های بزرگ را پوشش دهد. این موضوع پیچیدگی های اضافی پیش می آورد، مثلا باید موقعی که دیتاست ها بسیار بزرگ هستند و نمی توان آنها را در حافظه نگهداشت، از صفحهبندی استفاده کرد.
کاربردها در پایگاه داده
کوتهنوشت CRUD به همه توابع عمده ای که در نرمافزار کاربردی پایگاه داده رابطهای پیادهسازی شده است، اشاره دارد. هر حرف موجود در این مخفف، را می توان به یک بیانیه زبان پرسمان ساختیافته (SQL) استاندارد، متدهای پروتکل انتقال ابرمتن (HTTP) (که در ساخت واسط کاربری RESTful[۵] استفاده می شوند) یک یک عملیات خدمت توزیعشده داده (DDS) نگاشت داد:
Operation | SQL | HTTP | RESTful WS | DDS | MongoDB |
---|---|---|---|---|---|
Create | INSERT | PUT / POST | POST | write | Insert |
Read (Retrieve) | SELECT | GET | GET | read / take | Find |
Update (Modify) | UPDATE | PUT / POST / PATCH | PUT | write | Update |
Delete (Destroy) | DELETE | DELETE | DELETE | dispose | Delete |
مقایسه عملیات های پایگاه داده محور CRUD با متدهای HTTP ایراداتی هم دارد. اگر بخواهیم دقیق تر بگوییم، هم PUT و هم POST می توانند منابع را بسازند یا روزآمد کنند؛ تفاوت کلیدی آن است که برخلاف POST، متد PUT خودتوان است، یعنی چندین درخواست مشابه باید تاثیر مشابهی با یک درخواست منفرد داشته باشد. درنتیجه، PUT یک عملیات «جایگزین» است، که می توان استدلال کرد که روزآمدسازی یا «update» نیست.
اگرچه یک پایگاه داده رابطهای یک لایه ماندگاری معمول را در نرمافزارهای کاربردی می باشد، لایههای ماندگاری فراوان دیگری هم وجود دارد. برای مثال، عملیات CRUD را می توان در پایگاه داده شیء یا پایگاه داده اکسامال، یا فایل های متنی صاف، یا فرمت فایل سفارشی هم پیاده سازی کرد. بعضی از سامانه ها (دادهای بزرگ) UPDATE را پیادهسازی نمیکنند، بلکه فقط یک INSERT مهرزماندار دارند (وقعهنامه)، یعنی در واقع یک ورژن جدید از شیء را ذخیرهسازی میکنند. درنتیجه، آنها تراکنش ندارند، و ممکن است سازگاریشان را از دست بدهند.
واسط کاربری
CRUD همچنین با مرحله واسط کاربری بیشتر برنامههای کاربردی مرتبط است. برای مثال در نرمافزار کتاب آدرس، که واحد ذخیرهسازی مبنایی یک «ورودی تماس» است. به عنوان یک حداقل خالص، نرمافزار باید به کاربر اجازه این موارد را بدهد:
- ساخت یا اضافه کردن ورودی جدید؛
- خواندن، بازیابی، جستجو، یا دیدن ورودی موجود؛
- روزآمدی یا اصلاح ورودی موجود؛
- حذف، غیرفعالسازی، یا برداشتن ورودی موجود.
بدون حداقل این چهار عملیات، نرمافزار را نمیتوان کامل درنظر گرفت. به دلیل آنکه این عملیاتها بسیار بنیادین هستند، معمولا مستندسازی شده، و تحت یک عنوان جامع توصیف می شوند، مثل «مدیریت تماس»، «مدیریت محتوا» یا «نگهداری از محتوا» (یا «مدیریت سند» به صورت کلی، بر اساس واحد ذخیرهسازی اساسی برای کاربرد خاص).
انواع دیگر
دیگر انواع CRUD شامل:
- BREAD: browse, read, edit, add, delete[۶]
- DAVE: delete, add, view, edit[۷]
- CRAP: create, replicate, append, process[۸]
جستارهای وابسته
منابع
- ↑ «روزآمد کردن» [رایانه و فنّاوری اطلاعات] همارزِ «update»؛ منبع: گروه واژهگزینی. جواد میرشکاری، ویراستار. دفتر سوم. فرهنگ واژههای مصوب فرهنگستان. تهران: انتشارات فرهنگستان زبان و ادب فارسی. شابک ۹۶۴-۷۵۳۱-۵۰-۸ (ذیل سرواژهٔ روزآمد کردن)
- ↑ Heller, Martin (29 January 2007). "REST and CRUD: the Impedance Mismatch". Developer World. InfoWorld.
- ↑ Managing the Data-base Environment, p. 381, در گوگل بوکس
- ↑ Martin, James (1983). Managing the Data-base Environment. Englewood Cliffs, New Jersey: Prentice-Hall. p. 381. ISBN 0-135-50582-8.
- ↑ Tom Spencer (2014). "No REST for the whippet".
- ↑ Paul M. Jones (2008). "BREAD, not CRUD".
- ↑ McGaw, James (21 June 2010). Beginning Django E-Commerce. p. 41. ISBN 9781430225362.
- ↑ "CRAP and CRUD: From Database to Datacloud - Direct2DellEMC". Direct2DellEMC (به انگلیسی). 2012-11-13. Retrieved 2018-01-30.