extract()
chức năng không được dùng nữa
. Tốt hơn nên sử dụng XMLQuery()
.
Bạn cần phải khai báo một không gian tên mặc định để khớp với một không gian tên trong tài liệu XML:
select XMLQuery('
declare default element namespace
"http://schemas.datacontract.org/2004/07/LCC.Crew.FAReserves.wsvc.Entities.FAReserves"; (: :)
/Bid/BidName/text()'
passing XMLType(xmlbidcontent)
returning content) as BidName
from employeebids
where EmployeeBidID = 100;
BIDNAME
--------------------------------------------------------------------------------
BAC
hoặc (đơn giản hơn nhưng kém mạnh mẽ hơn) sử dụng ký tự đại diện:
select XMLQuery('/*:Bid/*:BidName/text()'
passing XMLType(xmlbidcontent)
returning content) as BidName
from employeebids
where EmployeeBidID = 100;
BIDNAME
--------------------------------------------------------------------------------
BAC
db <> fiddle hiển thị các truy vấn ban đầu của bạn và cả hai truy vấn này, sử dụng CTE để cung cấp giá trị CLOB mẫu.