当前位置:首页 > 开发教程 > XML教程 >

插入XML模式到SQL Server数据库。

时间:2016-06-01 09:05 来源:互联网 作者:源码搜藏 收藏

介绍 我写这只是我遇到一个问题的参考,而到SQL Server数据库插入n日志配置。 背景 我试图在一个数据库字段中插入XML模式(NLOG配置),我得到一个异常说: XML解析:1号线,290字,未申报的前缀 。 我GOOGLE了一点点,发现该解决方案 XML模式 下面是我想在

介绍

我写这只是我遇到一个问题的参考,而到SQL Server数据库插入n日志配置。

背景

我试图在一个数据库字段中插入XML模式(NLOG配置),我得到一个异常说:“ XML解析:1号线,290字,未申报的前缀 ”。

我GOOGLE了一点点,发现该解决方案 

XML模式

下面是我想在要插入到数据库的架构。

<target  xsi:type="File" name="TestXmlConfigTarget" fileName="C:\temp\logs\log.csv" archiveFileName="C:\temp\logs\test_log.csv.log" archiveEvery="Month" keepFileOpen="false" encoding="UTF-8" maxArchiveFiles="30" archiveNumbering="Rolling" archiveAboveSize="1000000" concurrentWrites="true">
   <layout xsi:type="CsvLayout">
      <column name="DateStamp" layout="${date:format=MM-\dd-\yyyy HH\:mm\:ss K}" />
   </layout>
</target>

问题SQL脚本。 

DECLARE @txml xml= N'<target  xsi:type="File" name="TestXmlConfigTarget" fileName="C:\temp\logs\log.csv" archiveFileName="C:\temp\logs\test_log.csv.log" archiveEvery="Month" keepFileOpen="false" encoding="UTF-8" maxArchiveFiles="30" archiveNumbering="Rolling" archiveAboveSize="1000000" concurrentWrites="true">
      <layout xsi:type="CsvLayout">
        <column name="DateStamp" layout="${date:format=MM-\dd-\yyyy HH\:mm\:ss K}" />       
      </layout>
    </target>'

SELECT @TXML 

虽然试图执行我有类似下面的异常。

消息9459,级别16,状态行1 
XML解析:1号线,290字,未申报的前缀。

分析了它一下,我意识到,“XSI:”是麻烦制造者。

为了解决这个问题,我在架构根加入了的xmlns名字空间。

XMLNS:XSI =“http://www.w3.org/2001/XMLSchema-instance”  在架构和现在的SQL看起来像 

DECLARE @txml xml= N'<target  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="File" name="TestXmlConfigTarget" fileName="C:\temp\logs\log.csv" archiveFileName="C:\temp\logs\test_log.csv.log" archiveEvery="Month" keepFileOpen="false" encoding="UTF-8" maxArchiveFiles="30" archiveNumbering="Rolling" archiveAboveSize="1000000" concurrentWrites="true">
      <layout xsi:type="CsvLayout">
        <column name="DateStamp" layout="${date:format=MM-\dd-\yyyy HH\:mm\:ss K}" />       
      </layout>
    </target>'

SELECT @TXML 

这解决了我的问题..

固定模式的问题之后,我可以能够与任何问题插入变量在适当的数据库字段..

希望这可以帮助一些身体..


下一篇:没有了

XML教程阅读排行

最新文章