پرش به محتوا

SQL/JRT

از ویکی‌پدیا، دانشنامهٔ آزاد

SQL/JRT یا SQL Routines and Types برای زبان برنامه نویسی جاوا ، بسط استاندارد SQL است که برای اولین بار با عنوان ISO /IEC 9075-13:2002 (بخش 13 SQL:1999 ) منتشر شد. SQL/JRT توانایی فراخوانی متدهای جاوا استاتیک را به عنوان روال از درون برنامه‌های SQL مشخص می‌کند که معمولاً به عنوان " روش‌های ذخیره شده جاوا" نامیده می‌شود. SQL/JRT همچنین خواستار توانایی استفاده از کلاس‌های جاوا به عنوان انواع ساختار یافته توسط کاربر SQL است. دو بخش برنامه افزودنی از استانداردهای قبلی ANSI SQLJ قسمت 1 و 2 سرچشمه می گیرند (نباید با SQLJ قسمت 0 اشتباه شود، که تعبیه SQL را در جاوا تعریف کرد، که بعداً توسط ISO به عنوان SQL/OLBاستاندارد شد

مثال[ویرایش]

SQL/JRT اجازه می دهد تا یک تابع جاوا از کد SQL به این صورت فراخوانی شود:

CREATE FUNCTION sinh(v DOUBLE) RETURNS DOUBLE
  LANGUAGE JAVA DETERMINISTIC NO SQL
  EXTERNAL NAME 'CLASSPATH:java.lang.Math.sinh'

SELECT sinh(doublecolumn) FROM mytable

SQL/JRT همچنین به کد جاوا اجازه می دهد تا به صورت پویا جداول را با استفاده از java.sql.ResultSet تولید کند .مجموعه‌های نتیجه بازگشتی به جداول SQL تبدیل می‌شوند و می‌توانند در هر جایی که بتوان از جدول یا نما استفاده کرد استفاده کرد.

پیاده سازی ها[ویرایش]

رویه های ذخیره شده SQL/JRT در HSQLDB پیاده سازی می شوند. رویه های ذخیره شده جاوا نیز در JServer Oracle (یا Aurora JVM) که در پایگاه داده Oracle نسخه 8i در سال 1999 معرفی شد، پیاده سازی شده است. اکنون Oracle JVM نامیده می شود. IBM DB2 همچنین از حدود سال 1998 از رویه های ذخیره شده جاوا پشتیبانی می کرد، اگرچه از JVM خارجی (در آن زمان) استفاده می کرد.

همچنین ببینید[ویرایش]

  • SQL: 2003

منابع[ویرایش]

  1. HSQLDB manual
  2. Bulusu Lakshman (2002). Oracle & Java Development. Sams Publishing. p. 6. ISBN 978-0-672-32117-7.
  3. The Aurora JVM and Its Components, Oracle Corp.
  4. Rick Greenwald; Robert Stackowiak; Jonathan Stern (2008). Oracle Essentials: Oracle Database 11g. O'Reilly Media, Inc. p. 323. ISBN 978-0-596-51454-9.
  5. Don Chamberlin (1998). A Complete Guide to DB2 Universal Database. Morgan Kaufmann. p. 565. ISBN 978-1-55860-482-7. Retrieved 16 November 2012.