2016-04-08 22 views
-1

Oracle'da bir çıkış girdisi yapmaya çalışıyorum. Giriş olarak :DS.SPECIALISE ve :AD.STATUS kullanıyorum.Oracle pop-out girdisi

Ama benim giriş değeri gönderilir gönderilmez o

ORA-00920 gösterir: geçersiz ilişkisel operatörü

ve çıktı üretmek için başarısız olur.

select DT.DOCTOR_ID, DT.NAME, AD.STATUS, DS.SPECIALISE 
from DOCTOR_SPECIALISE DS 
INNER JOIN DOCTOR DT 
    on DS.DOCTOR_ID = DT.DOCTOR_ID 
INNER JOIN AVAILABILITY_DATE AD 
    on DT.DOCTOR_ID = AD.DOCTOR_ID 
WHERE :DS.SPECIALISE 
    AND :AD.STATUS; 

ben bu şekilde yapmıştı, ama iç kullanıyorum neden ben anlamıyorum verileri oluşturmak olamaz katılmak:

İşte benim SQL sorgusu olur.

Select DT.DOCTOR_ID, DT.NAME, AD.STATUS, DS.SPECIALISE from DOCTOR_SPECIALISE DS, DOCTOR DT, AVAILABILITY_DATE AD 
WHERE :SPECIALISE=DS.SPECIALISE AND 
DT.DOCTOR_ID=DS.DOCTOR_ID AND :STATUS=AD.STATUS; 
+0

türü nedir: DS.SPECIALISE ve: AD.STATUS? WHERE koşuluyla ne yapmanız gerekiyor? – Aleksej

+0

Her ikisi de varchar. WHERE: DS.SPECIALISE VE: AD.STATUS kullanarak Im; insanların arama değerini girmesine izin vermek için. –

cevap

-1
SELECT DT.DOCTOR_ID, DT.NAME, AD.STATUS, DS.SPECIALISE 
    FROM DOCTOR_SPECIALISE DS, DOCTOR DT, AVAILABILITY_DATE AD 
WHERE :SPECIALISE=DS.SPECIALISE 
    AND DT.DOCTOR_ID=DS.DOCTOR_ID 
    AND :STATUS=AD.STATUS; 
+0

düzenlenebilir? – Aleksej

0

Belki aşağıdaki gibi bir şey gerekir: sonra

WHERE :DS.SPECIALISE 
    AND :AD.STATUS; 

: ayrıştırıcı DS_SPECIALISE ilişkisel operatörü bekliyor

Select DT.DOCTOR_ID, DT.NAME, AD.STATUS, DS.SPECIALISE 
from DOCTOR_SPECIALISE DS 
INNER JOIN DOCTOR DT 
    on DS.DOCTOR_ID = DT.DOCTOR_ID 
INNER JOIN AVAILABILITY_DATE AD 
    on DT.DOCTOR_ID = AD.DOCTOR_ID 
WHERE :SPECIALISE = DS.SPECIALISE 
    AND :STATUS = AD.STATUS; 
+0

ORA-22806: bir nesne veya REF değil, bu sonucu aldım ... –

+0

giriş değişkenlerinizi kontrol edin; Bunlara şu şekilde başvurabileceğine emin misiniz: DS.SPECIALISE ve: AD.STATUS? – Aleksej

+0

Gerçekten benim DS.SPECIALISE ve: AD.STATUS herhangi bir rehber olarak başvurabilirler nasıl kontrol etmelisiniz? –

0

Sorun bu geçersiz sözdizimi olduğunu düşünüyorum rezerve edilmiş sözcük VE değil

Aleksej'in yukarıdaki cevabı, u