0
我是在SQL服务器内使用XML的新手,并且为了得到我所需要的而苦苦挣扎。我曾试图努力从工地附近的几个例子为我所需要的,但没有运气,任何帮助,将不胜感激我的原始XML是如下将XML输入到临时表中
<?xml version="1.0" encoding="utf-8"?>
<Service xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<mParentServiceServiceID>37694</mServiceID>
<mJourneyMessage>Cancelled</mJourneyMessage>
<mApplicableDate>2014-10-10</mApplicableDate>
<Edits>
<mServiceID>14466</mServiceID>
<mStopSequenceOrdinal>2</mStopSequenceOrdinal>
</Edits>
<Edits>
<mServiceID>14466</mServiceID>
<mStopSequenceOrdinal>3</mStopSequenceOrdinal>
</Edits>
<Edits>
<mServiceID>14467</mServiceID>
<mStopSequenceOrdinal>5</mStopSequenceOrdinal>
</Edits>
<Edits>
<mServiceID>14467</mServiceID>
<mStopSequenceOrdinal>4</mStopSequenceOrdinal>
</Edits>
<Edits>
<mServiceID>14468</mServiceID>
<mStopSequenceOrdinal>4</mStopSequenceOrdinal>
</Edits>
</mEdits>
</Service>
这是正在通过所谓的XML变量传递到存储过程@Details
我想我的表如下所示
mParentServiceID|mJourneyMessage|mApplicableDate|mServiceID|mStopsSequenceOrdinal
37694 Cancelled 2014-10-10 14466 2
37694 Cancelled 2014-10-10 14466 3
37694 Cancelled 2014-10-10 14467 5
37694 Cancelled 2014-10-10 14467 4
37694 Cancelled 2014-10-10 14468 4
我知道这是不是标准化的,但是这是一个临时表,这样我可以在主存储之前做一些数据操纵表
到目前为止,我有以下
INSERT INTO @ApplicableServices
SELECT *
FROM OPENXML (@Details, '/Service/', 2)
WITH (mParentServiceServiceID int '../@SmParentServiceServiceID',
mJourneyMessage varchar(30) '../@mJourneyMessage ',
mApplicableDate Date '../@mApplicableDate',
mServiceID int '@mServiceID ',
mStopSequenceOrdinal int '@mStopSequenceOrdinal')
非常感谢