الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

تم تطوير Dbms_output.put_line

Featured Replies

بتاريخ:

السلام عليكم ........................................

من ذو فترة و انا مهتم بتزويدكم بأحدث المعلومات خصوصا في الإصدار 10g

هنا معلومة جديدة ولا كن لا تعتبر بتلك الأهمية ولا كن حتى نستفيد من المعلومات ونكون أكثر معرفة في هذا الإصدار

المعلومة الجديدة هي عن DBMS_OUTPUT.PUT_LINE ومن المعروف انها ليست ميزة جديدة وأنها متاحة في الإصدارات السابقة لعملية الطباعة

SET SERVEROUTPUT ON
BEGIN
DBMS_OUTPUT.PUT_LINE('PRINT ME');
END;



لا كن تكمن المشكلة في الإصدارات السابقة حيث لا يمكن طباعة اكثر من 255 بايت
لكل من لديه الإصدار 9i يجرب هذا المثال الذي يحاول طباعة أكثر من 255 بايت :

SET SEREROUTPUT ON

DECLARE
v_string VARCHAR2(500 CHAR);
BEGIN
v_string :='Hello my name is ahmed'
	 ||'Email :[email protected] '
	 ||'Oracle Call Interface(OCI)'
	 ||'Foreign Functions An OCI foreign function incorporates '
	 ||'the Oracle Call Interface. This interface allows you to write '
	 ||'a subprogram that contains calls to Oracle databases . '
	 ||'A foreign function that incorporates only the OCI '
	 ||'not the Oracle Precompiler interface) cannot access Forms Developer '
||'variables and items.';
DBMS_OUTPUT.PUT_LINE(v_string);
end;



سوف يرجع الخطأ التالي
ERROR at line 1:
ORA-20000: ORU-10028: line length overflow, limit of 255 chars per line

ولقد كان الحل في الإصدارات السابقة هو استخدام الوظيفة SUBSTR كالتالي :

SET SEREROUTPUT ON

DECLARE
v_string VARCHAR2(500 CHAR);
BEGIN
v_string :='Hello my name is ahmed'
	 ||'Email :[email protected] '
	 ||'Oracle Call Interface(OCI)'
	 ||'Foreign Functions An OCI foreign function incorporates '
	 ||'the Oracle Call Interface. This interface allows you to write '
	 ||'a subprogram that contains calls to Oracle databases . '
	 ||'A foreign function that incorporates only the OCI '
	 ||'not the Oracle Precompiler interface) cannot access Forms Developer '
||'variables and items.';
DBMS_OUTPUT.PUT_LINE(SUBSTR(v_string, 1, 255));
DBMS_OUTPUT.PUT_LINE(SUBSTR(v_string, 256));
end;



جرب هذا المثال في الإصدار 10G ستكون النتيجة دون مشاكل .

بالنسبة للإصدار 10G فقد تم رفع تقييد البايتات وهذا هو الفرق بين هذا الإصدار و الإصدارات السابقة .

عذروني على الإطالة .........................................................................

  • بعد 2 أسابيع...
بتاريخ:

أخي الكريم
هذا الكلام غير صحيح بالمرة لأن DBMS_OUTPUT.PUT_LINE يمكن أن يأخذ ما تشاء من عدد الحروف فقط يجب عليك وضع العبارة التالية قبل تنفيذ التعليمة :
DBMS_OUTPUT.ENABLE (
buffer_size IN INTEGER DEFAULT 20000);

راجع الـ DBMS_OUTPUT في ملفات المساعدة .

وشكرا

بتاريخ:
  • كاتب الموضوع

شكرا لردك ياعزيزي

اولا: هذا الكلام ليس تأليف من عندي او من خيال وأنما هذه المعلومة من كتاب أطلعت عليه
ثانيا: يمكن ما فهمت انت الموضوع

المقصود هنا حينما تستخدم DBMS_OUTPUT.PUT_LINE في الأصدار 9i في الوضع الأفتراضي لايمكنك طباعة اكثر من 255 حرف ولم يتعلق الموضوع كما ذكرت انت بأستخدام

DBMS_OUTPUT.ENABLE( buffer_size IN INTEGER DEFAULT 20000)

بينما في أوراكل 10g يمكن عمل ذلك

ثالثا: حينما تقول هذا الكلام غير صحيح بالمرة ماعليك سوى التجربة في الأصدارين وسترى الأختلاف

اتمنى ان يكون المغزى من الكلام واضح ..............

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.