Oracle
 sql >> база данни >  >> RDS >> Oracle

Проверете дължината на колоната в XMLTable

Имате правописни грешки и непоследователно именуване, така че е трудно да се каже какво точно правите, за да получите тази грешка, но работи, ако използвате string-length() функция от вашия DB2 пример, а не length() (или lenght() ):

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

С модифицирани данни за задействане на поведението при грешка:

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. Подвижни ежедневни отделни преброявания

  2. Помощ за заявка - Низ в клаузата where има символ &

  3. PLS-00103 Грешка в съхранената процедура на Oracle

  4. Коригиране на грешка ORA-65096 при създаване на автоматизирани тестове в Django с помощта на Oracle

  5. предаване на таблица и име на колона динамично с помощта на свързващи променливи