الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

بحث عن كلمة

مغلق
بدأه eng_2007 في 7 يونيو 2006 · 6 رد · 629 مشاهدة · في قواعد بيانات Oracle
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

هل في طريقه في الأوراكل بتمكن من عمليه البحث عن كلمه أو أكتر داخل محتويات ملف مخزن بالداتا بيز

والملف مخزن من نوع blob

لو في طريقه كيف ممكن أعملها؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

#2

توجد طريقة موضحة بالكود التالي

/* File on web: munising_falls_02.sql */
	DECLARE
	   directions CLOB;
	   directions_1 VARCHAR2(300);
	   directions_2 VARCHAR2(300);
	   chars_read_1 BINARY_INTEGER;
	   chars_read_2 BINARY_INTEGER;
	   offset INTEGER;
	BEGIN
	   --Retrieve the LOB locator inserted previously
	   SELECT falls_directions
		 INTO directions
		 FROM waterfalls
		WHERE falls_name='Munising Falls';

	   --Begin reading with the first character
	   offset := 1;

	   --Attempt to read 229 characters of directions, chars_read_1 will
	   --be updated with the actual number of characters read
	   chars_read_1 := 229;
	   DBMS_LOB.READ(directions, chars_read_1, offset, directions_1);

	   --If we read 229 characters, update the offset and try to
	   --read 255 more.
	   IF chars_read_1 = 229 THEN
		  offset := offset + chars_read_1;
		  chars_read_2 := 255;
		  DBMS_LOB.READ(directions, chars_read_2, offset, directions_2);
	   ELSE
		  chars_read_2 := 0;
		  directions_2 := '';
	   END IF;

	   --Display the total number of characters read
	   DBMS_OUTPUT.PUT_LINE('Characters read = ' ||
							TO_CHAR(chars_read_1+chars_read_2));

	   --Display the directions
	   DBMS_OUTPUT.PUT_LINE(directions_1);
	   DBMS_OUTPUT.PUT_LINE(directions_2);
	END;
#3

ممكن توضيح أكتر

#4

هل في إمكانيه لتحويل هاد الكود ل procedure أو function

بحيث إنها تاخد parameter الكلمه الي بدي أعمل عليها بحث؟؟؟؟؟؟؟؟؟؟؟؟؟ظ

#5

شكل هذه method هو :

PROCEDURE READ (
lobsrc IN BFILE|BLOB|CLOB ,
amount IN OUT BINARY_INTEGER,
offset IN INTEGER,
buffer OUT RAW|VARCHAR2 )

بالنظر إلى الكود السابق نجد :

1- direction و هو المتحول الذي يخزن "مؤشراً " على clob أو blob الذي قمنا بتخزينه داخل الجدول ..

2- عندما يقوم بالقراءة فإنه يجب أن تعطيه offset و هو البداية الذي ستتم القراءة من بدايته و بالتالي تتغير قيمته كل ما قرأت من الملف ... أم chars_read_2 هو عدد المحارف التي تمت قراءتها ....

و الذي يهمك أكثر هو قيمة directions_2 التي تخزن قيمة الحروف التي تمت قراءتها ... بالنسبة لمشكلتك فإنه كلما تمت القراءة إفحص قيمة direction2 هل هي الكلمة التي تبحث عنها فإن كانت كذلك فإنتهى الأمر و إلا فنفذ عملية القراء من جديد ... مع العلم إذا وصلت لنهاية الملف فإنه سوف يعطي Exception

#6

هل هاد الكود بينفع في حاله البحث عن جمله في محتويات الملف؟؟؟؟؟؟؟؟؟؟

وحكيت إنه بيطلع إكسبشن في انهايه؟؟؟؟هل هاد بكل الحالات

#7

القصد من Exception أنه عندما يصل إلى نهاية الملف ...

هذا الموضوع مغلق.

مواضيع مشابهة