Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Sprawdź długość kolumny w XMLTable

Masz literówki i niespójne nazewnictwo, więc trudno jest dokładnie powiedzieć, co naprawdę robisz, aby uzyskać ten błąd, ale działa, jeśli użyjesz string-length() funkcji z przykładu DB2, a nie length() (lub lenght() ):

"address" varchar2(15) path 'address/(if(string-length(.)<=15) then . else "Error!")' 

Ze zmodyfikowanymi danymi, aby wywołać zachowanie błędu:

select *
from XMLTABLE ('customers/*'
 passing xmltype('<customers>
 <customer>
  <name>abc</name>
  <surname>abc</surname>
  <address>abc def ghi jkl mno</address>
 </customer>
 <customer>
   <name>abc</name>
  <surname>abc</surname>
  <address>abc</address>
 </customer>
</customers>')
columns 
  "address"  varchar(15) path 'address/(if(string-length(.)<=15) then . else "Error!")' 
) data;

address       
---------------
Error!         
abc            



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Uzyskaj dostęp do usługi sieciowej z procedury składowanej Oracle

  2. jak zmienić datę na godzinę w Oracle 10g

  3. Jak wyłączyć wygaśnięcie hasła Oracle?

  4. Jak mogę automatycznie odblokować stoły w Oracle po określonym czasie?

  5. Czy istnieje sposób na użycie RSA w Oracle/PL SQL?