SQL Server2005 xml字段使用方法 1对多表记录读取
在SQL Server2005中有FOR XML 用法,可以讲一个表作为一个字段。
我的设计想法主要是用在1对多的关系中表读取的问题。
表A 表B
在A中有一条记录而在B中有多条记录可以参照下面的写法:(我的项目中用到的,修改了字段主要是演示用)
select A.*,
(SELECT a, CAST(G_Univalence AS NVARCHAR(48)) AS G_Univalence,
--注意留下他的意义只是money字段在for xml中它采用科学计数法显示,在应用中不好处理
from B WHERE B.CB_ID = A.BP_ID FOR XML RAW,TYPE,ROOT('GrainConstraint')) AS GrainConstraint
--使用TYPE返回 xml字段类型
from A
在后台,使用SqlDataReader读取xml字段,GetSqlXml(),参照下面的代码.
public static bool ToDataTable(SqlXml sxSource, DataTable dt)
{
XmlReader xmlReader = sxSource.CreateReader();
string tempName;
int nColumnIndex;
Type type;
while (xmlReader.Read()) //每次循环1条记录
{
switch (xmlReader.NodeType)
{
case XmlNodeType.Element:
if (xmlReader.LocalName == "row")
{
&n
相关文档:
declare @XML XML
SET @XML='<root>
<OLDVALUE>
<H_Action id="1130">030</H_Action>
<D_Action>030</D_Action>
<OrderCompany>00220</OrderCompany>
<OrderNumber>10004035</OrderNumber> ......
var xmlDom; //XML DOM object
var xmlFile="ff.xml"; //xml file name
loadXML = function(fileRoute){
xmlDoc=null;
if (window.ActiveXObject){
xmlDoc = new ActiveXObject('Msxml2.DOMDocument');
xmlDoc.async=false;
xmlDoc.load(fileRoute);
}else if (document.implementation &a ......
三、训练分类器
样本创建之后,接下来要训练分类器,这个过程是由haartraining 程序来实现的。
Haartraining 的命令行参数如下:
-data<dir_name>
存放训练好的分类器的路径名。
-vec<vec_file_name>
正样本文件名(由trainingssamples 程序或者由其他的方法创建的)
-bg<background_file_name& ......
实现功能:根据配置文件(XXXX.ini)中的内容对XML中节点进行操作,如果XML中存在与配置文件中相同的节点,则根据配置文件将XML文件中相应节点的值进行更新;如果XML文件中不存在配置文件中出现的节点,则在XML中将新节点及值进行插入操作。
◆XML文档结构如下
//------------------------------------------------------ ......