زبان پرس‌وجوی شی‌گرا (OQL)

Object Query Language
📅 14 تیر 1405 📄 168 کلمه 🔗 منبع اصلی

چکیده

زبان پرس‌وجوی شی‌گرا (OQL) یک استاندارد برای پایگاه‌های داده شی‌گرا است که بر اساس الگوی SQL طراحی شده و توسط گروه مدیریت داده‌های شی‌گرا (ODMG) توسعه یافته است. به دلیل پیچیدگی بالا، استاندارد کامل OQL تاکنون در هیچ نرم‌افزاری به‌طور کامل پیاده‌سازی نشده است. با این حال، این زبان بر طراحی زبان‌های پرس‌وجوی بعدی مانند JDOQL و EJB QL تأثیرگذار بوده است.

زبان پرس‌وجوی شی‌گرا (OQL)

زبان پرس‌وجوی شی‌گرا (OQL) یک استاندارد برای پایگاه‌های داده شی‌گرا است که بر اساس الگوی SQL طراحی شده و توسط گروه مدیریت داده‌های شی‌گرا (ODMG) توسعه یافته است. به دلیل پیچیدگی بالا، استاندارد کامل OQL تاکنون در هیچ نرم‌افزاری به‌طور کامل پیاده‌سازی نشده است.

این زبان بر طراحی زبان‌های پرس‌وجوی بعدی مانند JDOQL و EJB QL تأثیرگذار بوده، اما هیچ‌کدام به عنوان نسخه‌ای از OQL محسوب نمی‌شوند.

قواعد کلی

  • همه دستورات کامل باید با نقطه‌ویرگول (;) خاتمه یابند.
  • لیست ورودی‌ها معمولاً با کاما (,) جدا می‌شوند، اما با کاما خاتمه نمی‌یابند.
  • رشته‌های متنی باید داخل گیومه (« ») قرار گیرند.

نمونه‌ها

پرس‌وجوی ساده

مثال زیر نشان می‌دهد چگونه می‌توان سرعت CPU تمام کامپیوترهای شخصی با رم بیش از 64 مگابایت را از یک پایگاه داده فرضی بازیابی کرد:

SELECT pc.cpuspeed
FROM PCs pc
WHERE pc.ram > 64;

پرس‌وجو با گروه‌بندی و تجمیع

مثال زیر متوسط مقدار رم کامپیوترهای شخصی را بر اساس تولیدکننده نشان می‌دهد:

SELECT manufacturer, AVG(SELECT part.pc.ram FROM partition part)
FROM PCs pc
GROUP BY manufacturer: pc.manufacturer;

توجه داشته باشید که از کلمه کلیدی partition به جای تجمیع در SQL سنتی استفاده شده است.

جمع‌بندی

زبان پرس‌وجوی شی‌گرا (OQL) اگرچه به‌طور کامل پیاده‌سازی نشده، اما به عنوان یک الگوی مهم در توسعه زبان‌های پرس‌وجوی شی‌گرا شناخته می‌شود. قواعد و ساختار آن، مانند استفاده از نقطه‌ویرگول برای پایان دستورات و گروه‌بندی داده‌ها، الهام‌بخش زبان‌های بعدی بوده است. با وجود پیچیدگی، OQL همچنان به عنوان یک مرجع اساسی در حوزه پایگاه‌های داده شی‌گرا باقی مانده است.