使用XMLEXISTS的Oracle XML DB不能在根XML上使用xmlns

时间:2017-04-14 01:24:10

标签: oracle-xml-db

我有一个包含XMLTYPE列的表,XMLEXIST工作正常。

但是当根元素具有xmlns属性时,XMLEXISTS找不到我正在寻找的记录。

没有xmlns属性,XMLEXISTS工作正常。

出了什么问题?

示例:

<employe>
   <employe_id>12345</employe_id>
   <employe_name>John</employe_name>
</employe>

查询:

SELECT count(*) FROM mytable
WHERE XMLEXISTS('/employe[employe_id="12345"]' 
                PASSING xmltype_col
      )

结果:1​​

但是在根元素上使用xmlns属性时,查询返回0。

<employe xmlns="http://www.example.com/version_01_01_00">
   <employe_id>12345</employe_id>
   <employe_name>John</employe_name>
</employe>

mytable是无模式的。

1 个答案:

答案 0 :(得分:0)

经过大量研究,我发现了解决方案。

from django.shortcuts import render

def name(request):
  if request.method == 'POST':
    form = NameForm(request.POST)
    if form.is_valid():
        name = form.cleaned_data['your_name']
        return HttpResponseRedirect('/thanks/', RequestContext(request))
    else:
        form = NameForm()
    return render(request, 'contact.html')