बहुत आसान सवाल - मेरे पास एक विशेषता है जिसमें मैं दोहरे उद्धरण प्राप्त करना चाहता हूं। मैं उनसे कैसे बचूं? मैंटी-एसक्यूएल में एक्सएमएल स्ट्रिंग में विशेषताओं में डबल कोट्स से कैसे बचूं?
- की कोशिश की है "\"
- "
- \\"
और मैं उन सभी के लिए @xml चर दोनों एक्सएमएल प्रकार और varchar (max) बनाया है ।
declare @xml xml --(or varchar(max) tried both)
set @xml = '<transaction><item value="hi "mom" lol"
ItemId="106" ItemType="2" instanceId="215923801" dataSetId="1" /></transaction>'
declare @xh int
exec sp_xml_preparedocument @xh OUTPUT, @xml
insert into @commits --I declare the table, just removed it for brevity
select
x.*
from openxml(@xh,'/transaction/item')
WITH (
dataItemId int,
dataItemType int,
instanceId int,
dataSetId int,
value varchar(max)
) x
वैसे ... ओपनएक्सएमएल का उपयोग करने के लिए कोई कारण नहीं है (AFAIK) ... यह "प्री-2005" सामान है। यदि आपके पास xml मान है, तो इसे सीधे XML के रूप में उपयोग करें। –
मार्क - धन्यवाद। मेरे पास एक और बग था जो ओपनएक्सएमएल हो गया था, घुंघराले एस्ट्रोफ़ेस के साथ झुका हुआ था: 'मुझे लगता है कि मैं इसे Google के लिए एक प्रश्न/उत्तर के रूप में पोस्ट करने जा रहा हूं। –