私のSQLクエリは、実際にはXMLである単一の列結果を返します。レコードセットをクリックすると、results.xml
が開きます。VBScriptを使用したXMLへのレコードセットの取得
これは私が1 Test_IDを必要とし、このから
result_string = objRecordSet.Fields(colname).Value
<TEST_SUITE SUITE_ID="122675741" PART_NUMBER="MTSTE-26248-00" REVISION="A" SUITE_TYPE="PRODUCTION" SUITE_NAME="HOT-LOW" SUITE_STOP_ON_FAIL="TRUE" TARGET_DURATION="0" SEQUENCE="1" UPDATED="2016-12-15T00:21:46.510">
<SUITE_DESCRIPTION>"HOT-LOW"</SUITE_DESCRIPTION>
<TESTS>
<TEST TEST_ID="122663528" TEST_NAME="Set Suite Environment Variables" PART_NUMBER="MTTST-65899-00" REVISION="A" MODULE="TEST Set Environment Variables.vi" MODULE_LIBRARY="BIG-IP_TESTS" TEST_STOP_ON_FAIL="TRUE" TEST_TYPE="BEGIN_SESSION">
<PARAMETERS>
<PARAMETER PARAMETER_ID="122663469" PARAMETER_NAME="TOS" PARAMETER_VALUE="build_2.0.1.1647.0_centos6_x86_64" />
<PARAMETER PARAMETER_ID="82137" PARAMETER_NAME="chain" PARAMETER_VALUE="TRUE" />
</PARAMETERS>
<MEASUREMENTS>
<MEASUREMENT MEASUREMENT_ID="70784" MEASUREMENT_NAME="TOS" UNITS="" UPPER_LIMIT="" LOWER_LIMIT="" COMPARISON="LOG" INPUT_SCALE_FACTOR="" OUTPUT_SCALE_FACTOR="" />
<MEASUREMENT MEASUREMENT_ID="81537" MEASUREMENT_NAME="chain" UNITS="" UPPER_LIMIT="" LOWER_LIMIT="" COMPARISON="LOG" INPUT_SCALE_FACTOR="" OUTPUT_SCALE_FACTOR="" />
</MEASUREMENTS>
</TEST>
</TESTS>
</TEST_SUITE>
を使用してresult_string
につかんでいた出力XMLです。このresult_string
をXMLに格納してTest_IDを取得するにはどうすればよいですか。または、Test_IDを取得する簡単な方法はありますか?
私はこのようなことをしましたが、これが正しいかどうかわからず、また、objCommand.Execute ,, adExecuteStream
という行でエラーが発生しています。
Dim strm
Set strm = CreateObject("ADODB.Stream")
strm.Open
Set objCommand.ActiveConnection = objConnection
objCommand.CommandText = script_testID
objCommand.Properties("Output Stream")= strm
objCommand.Properties("Output Encoding") = "UTF-8"
objCommand.Properties("XML Root") = "Root" 'this can be anything you want
objCommand.CommandType = 4
objCommand.Execute ,, adExecuteStream
strm.Position = 0
text = strm.ReadText
Set xmlDoc = CreateObject("Microsoft.XMLDOM")
xmlDoc.Async = "false"
xmlDoc.LoadXML(strm.ReadText)
strm.Close : Set strm = Nothing
Set objCommand = Nothing
実は質問はXML解析についてですとSQLとレコードセットとは関係ありませんので、SQLタグは無関係です。 – omegastripes
'test_id = Split(Split(result_string、" TEST_ID = ""、2)(1)、 "" "、2)(012)を試してください。 – omegastripes
うわー、ありがとうございます。本当にあなたの迅速な助けに感謝します。 – user2329418