Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एसक्यूएल सर्वर 2008 में एक्सएमएल वैरिएबल से एक विशेषता को कैसे हटाएं?

आपको xmlnamespaces के साथ का उपयोग करना होगा , अन्यथा "/clue_personal_auto" NAMESPACED से मेल नहीं खाता clue_personal_auto xmlns="..." नोड.

इतना ही नहीं, आप वास्तव में नाम स्थान को नहीं हटा सकते क्योंकि यह एक सामान्य विशेषता नहीं है।

एक नियमित विशेषता को हटाने का उदाहरण

declare @xml table (xmlid int, xmldocument xml)
insert @xml select 357, '
<clue_personal_auto xmlns="http://cp.com/rules/client" otherattrib="x">
  <admin>
     <receipt_date>03/16/2011</receipt_date>
     <date_request_ordered>03/16/2011</date_request_ordered>
     <report_usage>Personal</report_usage>
  </admin>
</clue_personal_auto>'

;WITH XMLNAMESPACES ('http://cp.com/rules/client' as ns)
UPDATE @XML
SET XmlDocument.modify('delete  (/ns:clue_personal_auto/@otherattrib)[1]')
WHERE xmlid = 357

select * from @xml


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डेटाबेस जो> 500 मिलियन पंक्तियों को संभाल सकता है

  2. टी-एसक्यूएल में गोल मिलीसेकंड

  3. व्युत्पन्न कॉलम में स्ट्रिंग दिनांक आयात करें

  4. नामित पाइपों के बजाय SQL सर्वर से कनेक्ट करने के लिए ASP.Net को TCP/IP का उपयोग करने के लिए बाध्य करना

  5. तालिका बदलें और त्रुटि में UNIQUE कुंजी परिणाम जोड़ें