إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

محتار كيف اعمل هذه الـview ساعدوني


6 رد (ردود) على هذا الموضوع

#1 orefai

orefai

    مشترك

  • الأعضــاء
  • 58 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:JDeveloper, DB

تاريخ المشاركة 09 February 2008 - 01:54 PM

السلام عليكم
اريد عمل View لكي تقرأ الحقول من ثلاثة جداول
ولنفرض ان أسماء هذه الجداول هي emp1, emp2, emp3
ولتكن جميع هذه الجداول تشمل على هذه الحقول
EMP_NO NUMBER(8) ,EMP_NAME VARCHAR2(150), IMG BLOB

الوضع الطبيعي الذي اعرفه لانشاء هذه ال VIEW هو
CREATE OR REPLACE VIEW EMPLOYEE
("TYPE","EMP_NO","EMP_NAME ","IMG")
AS(
(SELECT 1,EMP_NO ,EMP_NAME,IMG FROM EMP1)
UNION
( SELECT 2 ,EMP_NO ,EMP_NAME,IMG FROM EMP2)
UNION
( SELECT 3,EMP_NO ,EMP_NAME,IMG FROM EMP3)
);
ولكن للأسف الظاهر ان هذه الطريقة ما تصلح مع حقول الصور
كانت تطلع لي مسج
ORA-00932: inconsistent datatypes: expected - got BLOB
ياريت احد يقدر يساعدني بعملها
علما باني استخدم SQL*Plus Version 8.0.6.0.0

تم التعديل بواسطة orefai, 09 February 2008 - 01:57 PM.

كلما ازدت علما ... زادني علما بجهلي

#2 ahmed_samir

ahmed_samir

    عضو نشط

  • الأعضــاء
  • 331 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 09 February 2008 - 07:10 PM

السلام عليكم

اخى الفاضل

اعتقد ان هذا الكود خطأ ...

حيث انك سوف تظهر المتشابة فى الثلاث جداول

و لكن اعتقد ان الصح هو ::

ان تتبع مبدء العلاقات :
العلاقات = n - 1
اى انك سوف تقوم بعمل علاقاتان لربك بين الثلاث جداول

عتقد ان الصح :
CREATE OR REPLACE VIEW EMPLOYEE AS
select * from emp1 join emp2
using ( ?? )
join em3
using ( ??)

و الله اعلم
لو سمحت .. لو سمحت .. ايوة انت .. متعرفش حد عايز مبرمج اوراكل خبرة برنامج ERP ( شؤون عاملين و مخازن و مشتريات.. معلش ابقى قولى لو فى حد عندك )

OCP - Build Internet Applications

Oracle Certified Associate

Visual Basic 6 - ASP

-------

انشاء الله ربنا يكرمنى و اكون Oracle Developer محترف

الحمد الله OCP - Build Internet Applications

-------

#3 orefai

orefai

    مشترك

  • الأعضــاء
  • 58 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:JDeveloper, DB

تاريخ المشاركة 10 February 2008 - 06:59 AM

اخوي الفاضل احمد سمير شكرا على الرد والمحاولة يبدو طريقتك صحيحية بس انا لسة ما سمعت عن هذه الطريقة ، يمكن تستخدم في 10g , بعتقد انها ما بتمشي مع الربط باكثر من جدولين ، جرب اعمل 3 جداول او حتى 2 بسيطين عرف فيهم حقلين ويكون واحد منهم من نوع Blob وحاول اعمل view تقرأ منهم
اشكرك مرة ثانية وأأكد لك ان الطريقة اللي انا استخدمتها مجربة و صحيحة 100% بس مانفعت مع الصور وانا محتار للان فيها , مطلوب مني عمل اكتر من 30 تقرير وانشاء هذى الـView حيساعدني ويريحني كثييير
كلما ازدت علما ... زادني علما بجهلي

#4 ahmed_samir

ahmed_samir

    عضو نشط

  • الأعضــاء
  • 331 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 10 February 2008 - 10:13 AM

السلام عليكم

لا شكر على واجب .. اخى ..

ولكنى اريد ان اعرف شئ من الواضح ان ترفق الصور بالسجل .. فى قاعدة البيانات ... صح..

فهل المشكلة فقط فى هذا الحقل .. ام فى العملية ككل ؟؟

وشكرا
لو سمحت .. لو سمحت .. ايوة انت .. متعرفش حد عايز مبرمج اوراكل خبرة برنامج ERP ( شؤون عاملين و مخازن و مشتريات.. معلش ابقى قولى لو فى حد عندك )

OCP - Build Internet Applications

Oracle Certified Associate

Visual Basic 6 - ASP

-------

انشاء الله ربنا يكرمنى و اكون Oracle Developer محترف

الحمد الله OCP - Build Internet Applications

-------

#5 orefai

orefai

    مشترك

  • الأعضــاء
  • 58 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:JDeveloper, DB

تاريخ المشاركة 10 February 2008 - 11:47 AM

صحيح .. صممت الحقول في الجداول اعلاه بحيث يتم تخزين الصور فيها
اما بالنسبة لسؤالك عن المشكلة فهي عند اضافة الحقل IMG الى الView فقط ، اما اذا لم ادخله في الView مافي مشاكل
وشكرا يا احمد سمير
-----------------
اسامة الرفاعي
الرياض

تم التعديل بواسطة orefai, 10 February 2008 - 11:48 AM.

كلما ازدت علما ... زادني علما بجهلي

#6 orefai

orefai

    مشترك

  • الأعضــاء
  • 58 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:JDeveloper, DB

تاريخ المشاركة 11 February 2008 - 10:48 AM

توصلت انا الى حل بديل اخر
اني اعمل الView تقرأ الحقول من الجداول بالطريقة المعروفة، وما دخلت حقل الصور فيها
و خليت تقاريري تقرأ الصور من Folder مخزنه فيه الصور
وهذا بشكل مؤقت حتى أوجد حل منصف لهالموضوع
كلما ازدت علما ... زادني علما بجهلي

#7 jamal_rrkk

jamal_rrkk

    عضو نشط

  • الأعضــاء
  • 452 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 12 February 2008 - 10:58 AM

السلام عليكم ورحمة الله وبركاته

اخي الكريم

جرب الطريقة التالية قد تكون هي الحل

حول الـ blob إلي row باستخدام to_raw

وعند استدعاء الصورة حول الـ raw الي blob باستخدام to_blob


كـود PHP
Function Description
TO_CLOB (character_data) Converts character data into a CLOB. The input to TO_CLOB can be any of the following character types: VARCHAR2, NVARCHAR2, CHAR, NCHAR, CLOB, and NCLOB. If necessary (for example, if the input is NVARCHAR2), input data is converted from the national character set into the database character set.
TO_BLOB(raw_data) Similar to TO_CLOB, but converts RAW or LONG RAW data into a BLOB.
TO_NCLOB (character_data) Does the same as TO_CLOB, except that the result is an NCLOB using the national character set.
TO_LOB (long_data) Accepts either LONG or LONG RAW data as input, and converts that data to a CLOB or a BLOB, respectively. TO_LOB may be invoked only from the select list of a subquery in an INSERT ... SELECT ... FROM statement.
TO_RAW Takes a BLOB as input and returns the BLOB's data as a RAW value.


BLOB: Binary large object. Declares a variable that holds a LOB locator pointing to a large binary object
stored inside the database.



جزاك الله كل خير
قال تعالى :

{ وَمَا خَلَقْتُ الْجِنَّ وَالْإِنسَ إِلَّا لِيَعْبُدُونِ مَا أُرِيدُ مِنْهُم مِّن رِّزْقٍ

وَمَا أُرِيدُ أَن يُطْعِمُونِ إِنَّ اللَّهَ هُوَ الرَّزَّاقُ ذُو الْقُوَّةِ الْمتينُ }

[ الذاريات : 56 : 58 ]


{ وَأْمُرْ أَهْلَكَ بِالصَّلَاةِ وَاصْطَبِرْ عَلَيْهَا لَا نَسْأَلُكَ رِزْقًا

نَحْنُ نَرْزُقُكَ وَالْعَاقِبَةُ لِلتَّقْوَى }

[ طه : 131 ]




سبحان الله والحمد لله والله أكبر


http://tech.groups.y...and_Accounting/