将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes ) [3]

Microsoft SQLXML 4.0 SP1.msi Microsoft SQLXML 4.0 SP1.msi 安装BizTalk 是可能会需要,可能需要独立安装 立即下载

将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes )   


小气的神

2002-5-25

 

Article Type: Overview 

难度等级:5/9       

版本:4.16

 

 

产生映射文件

如何创建一个映射文件呢?首先它是一个XML文件,过去Microsoft推荐使用XDR(XML-Data Reduced)来定义,英文的全称是“Creating XML Views by Using Annotated XDR Schemas”,Annotated我不知如何翻译它更形象。SQLXML 3.0之后Microsoft开始支持使用更加规范的Annotated XSD Schemas来完成过去XDR的定义功能,并且提供一个工具Cvtschema.exe(安装路径的Bin目录下)来完成将原来XDR定义的文件转换成XSD格式的。但问题是我们还是需要产生一个XSD或XDR的文件。

       即使在过去使用XDR,产生一个映射文件仍然是一件比较枯燥的事情,手工产生一个基本的Schema文件似乎是必须的,但对于一个从未使用过XDR或XSD的人来说是痛苦的,这就像你要给一个XML文件产生一个XSLT文件一样,无论你多么希望有一个工具能根据XML自动产生一个,但事实上我们发现手工的方式远比工具更有成效。我在不了解这个道理之前,把希望聚集在Microsoft提供的SQL Server XML View Mapper这个工具上,最失望是它在自动化之前,仍然要求我提供一个XDR文档(我开始明白Mapper的意义,因为它只对映射自动,Schema文件还是要你自己产生)。即使它能够自动化一部分功能(为你自动加上sql:relation等XML模板元素),很快我还是放弃使用它,因为它的新版本可能会更好,会支持XSD Schema,而不是向现在这样只支持XDR Schema。必须承认当你从事稍微大一点的应用,比如十几张表,二十几个映射文件时,每次从头定义开始定义几乎类似的Schema板文件就变得痛苦和冗长起来。

 

(XML View Mapper 界面)

 

       之后我花了几个小时,翻起dotNET中有关XML的API手册,开始跌跌撞撞的写一个根据数据库自动产生Schema文件的工具,它基本是默认映射也就是说几乎不需要再加Annotate,真正应用中你可能仍然需要根据具体的情况加入一些其它的Annotate。我希望它能根据数据库中的Table,自动产生Schema文件,这样我只要Copy它到IIS的模板目录中就可以着手下一步的编码和存取XML数据部分(当然我们会看到,也就是第四个特点中要讲的)。事实上最后它的功能”非常强大”,我不断地加入参数的处理,使得它能产生更多的相关文件。

这个小工具WriteXSD.exe(暂且允许我这么称呼它吧),能够从一个数据库的表中产生和预览我们需要的Schema。

 

 

然后我们运行下面的命令:

WriteXSD /c:Attribute /t:xsd /o:EmplyeesA.xml /m:EmplyeesO.xml Employees

 

 

如果成功我们将获得两个文件EmplyeesA.xml 和EmplyeesO.xml 一个是Schema文件,另外一个是模板-映射文件,然后我们将它们Copy到我们先前设置的目录,一个是/Schemas 一个是/Templeas 之后我们执行下面的命令:http://localhost/Northwind/Templates/EmplyeesO.xml

我们会看到下面的结果,基本上它是按我们生成的EmplyeesA.XML产生的,当然还是有些小小的问题比如Photo这个字段,它应当是图片类型,而在EmplyeesA.xml 只是简单的 type=”’xs:string”(这个版本里任何字段我都转换成string类型haha) 可以清晰的看到这个字段这样显示出来:

FRwvAAIAAAANAA4AFAAhAP////9CaXRtYXAgSW1hZ2UAUGFpbnQuUGljdHVyZQABBQAAAgAAAAcAAABQQnJ1c2gAAAA…... 对于这个显示我很抱歉:) ,下一个版本也许应该加上数据库字段类型和XSD数据类型的转换。

 

 

当然在某个不久之后,我发现也有其他的方法产生Annotated schemas:VS.NET的方法,新建一个XML Schema,然后在VS中拖拽你需要的Table到设计视图上比如下面这样

 

 

切换到XML视图中我们看到是大致下面的代码,然后手工删除掉黑色斜体带下划线的部分。

<?xml version="1.0" encoding="utf-8" ?>

<xs:schema id="Employyes" targetNamespace="http://tempuri.org/Employyes.xsd" elementFormDefault="qualified" xmlns="http://tempuri.org/Employyes.xsd" xmlns:mstns="http://tempuri.org/Employyes.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">

     <xs:element name="Document">

         <xs:complexType>

              <xs:choice maxOccurs="unbounded">

                   <xs:element name="Employees">

                       <xs:complexType>

                            <xs:sequence>

<xs:element name="EmployeeID" msdata:ReadOnly="true" msdata:AutoIncrement="true" type="xs:int" />

     <xs:element name="LastName" type="xs:string" />

     <xs:element name="FirstName" type="xs:string" />

     <xs:element name="Title" type="xs:string" minOccurs="0" />

     <xs:element name="TitleOfCourtesy" type="xs:string" minOccurs="0" />

     <xs:element name="BirthDate" type="xs:dateTime" minOccurs="0" />

     <xs:element name="HireDate" type="xs:dateTime" minOccurs="0" />

     <xs:element name="Address" type="xs:string" minOccurs="0" />

     <xs:element name="City" type="xs:string" minOccurs="0" />

     <xs:element name="Region" type="xs:string" minOccurs="0" />

     <xs:element name="PostalCode" type="xs:string" minOccurs="0" />

     <xs:element name="Country" type="xs:string" minOccurs="0" />

     <xs:element name="HomePhone" type="xs:string" minOccurs="0" />

     <xs:element name="Extension" type="xs:string" minOccurs="0" />

     <xs:element name="Photo" type="xs:base64Binary" minOccurs="0" />

     <xs:element name="Notes" type="xs:string" minOccurs="0" />

     <xs:element name="ReportsTo" type="xs:int" minOccurs="0" />

     <xs:element name="PhotoPath" type="xs:string" minOccurs="0" />

                            </xs:sequence>

                       </xs:complexType>

                   </xs:element>

              </xs:choice>

         </xs:complexType>

         <xs:unique name="DocumentKey1" msdata:PrimaryKey="true">

              <xs:selector xpath=".//mstns:Employees" />

              <xs:field xpath="mstns:EmployeeID" />

         </xs:unique>

     </xs:element>

</xs:schema>

保存这个文件,然后将它Copy到我们设定的/Schemas目录中。

 

 

无论如何手工的方式永远都存在,只是说我们可以选择一种相对适合我们自己的方式来解决枯燥的操作。最后我不知道自己会喜欢哪种方式,不过从这之后有关于产生Annotated schemas对我来说变成一件有趣而不是很痛苦的事情了(haha)

       这之前我们讲述和看到的都是用手动或是直接的方式展现一些SQL 2000和SQLXML的特性,而后我们来看一些另外的功能――如何使用程序的方式来利用SQLXML的功能。这也是我们要讲的下一个特性了。

 


特别说明:

本文原创,优快云署名首发,所有文字和图片版权所有。未经授权请勿传播、转载或改编。

如果有问题或建议,请发电子邮件给new2001@msn.com

《BiLSTM with Multi-Polarity Orthogonal Attention for Implicit Sentiment Analysis》论文阅读笔记 文章名:《BiLSTM with Multi-Polarity Orthogonal Attention for Implicit Sentiment Analysis》 作者Jiyao Wei a,1, Jian Liaoa,1, Zhenfei Yanga, Suge Wanga,b,∗, Qiang Zhaoa 年份 2019 1 Introduction 目前文本情感分析多分析带... 阅读详情

相关推荐

nvprof:CUDA编程性能分析工具

NVIDIA提供了具有高性能计算的GPU产品,如何检验硬件的实际性能,写出高效的CUDA代码让算力加速卡物尽其用,那可以通过其配套提供的“护城河”软件工具链来检验和帮助发挥GPU的性能:nvprof。如下,对于将8192个A,B向量进行向量加法运算,即C[i] = A[i] + B[i],当软件设置不同的blocknum, threadnum时候,CUDA执行kernel的时间是不同的。比如如下命令,可以看到程序tmp1的总体性能,下面一行是打印gpu的执行时间情况。

Briwisdom的博客 3384

SQL Server 2000的FOR XML查询简介

使用Microsoft SQL Server 2000的XML查询郑佐 2005-6-28由于XML本身的诸多优点,XML技术已被广泛的使用,目前的好多软件技术同XML紧密相关,比如微软的.net 平台对xml提供了强大的支持,提供System.Xml以及其子命名空间下的类型来操作xml。Ado.net通过核心类型DataSet出色的把关系型数据库同xml进行了紧密集成。由于平常许多开发人员使用.

3973

【附源码】Node.js毕业设计高校院级校友信息管理系统(Express)

首先,该系统可以提高高校对校友信息管理的效率和准确性。通过系统提供的查询功能,高校可以方便地获取校友的最新联系方式和动态,及时了解校友的发展情况,为校友提供更好的服务和支持。总之,开发高校院级校友信息管理系统将为高校提供一个高效、便捷的工具,有助于提升校友管理水平和服务质量,促进高校与校友之间的良好互动关系。通过使用前端技术HTML、CSS、JavaScript和Vue框架,结合后端技术Node.js和Express框架,以及MySQL数据库,可以实现对校友信息的快速录入、查询、修改和删除等操作。

佳愉毕设源码 894

将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes ) [4]

将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes )   小气的神2002-5-25 Article Type: Overview  难度等级:5/9        版本:4.16  使用SQLXML Managed Classes       SQLXML提供的Managed Cl

ccBoy的专栏 1696

使用单片机和电流互感器对非正弦周期电流有效值测定

使用单片机和电流互感器,利用一种高速采样的方法来进行有效值测定

月光绿叶滴水音乐 3945

OPC通信从入门到精通_1_OPC基础知识及简单C#程序编写(OPCDA,OPCUA简介;OPC通信数据流框架图;C#程序编写)

ModbusTCP通信是采用直接方式进行通信,用OPC的方式如何去做呢?PLC作为ModbusTCP服务器,用KepServer作为ModbusTCP客户端,同时作为OPC服务器,PC作为OPC客户端新建项目,加载dll库(利用COM技术写的)添加引用,查看到其中包含了众多方法其中OPCGroups继承于IOPCGroups接口。

分享学习成长历程,Winter is coming! 1万+

使用SQLXML 3.0把存储过程暴露为Web服务

使用SQLXML 3.0把存储过程暴露为Web服务 最新的技术是Web服务。现在出现在所有市场中的类似简单对象访问协议(SOAP)、Web服务描述语言(WSDL)、通用描述、发现和集成(UDDI)等术语的基本元素都是XML和Internet。 Web服务用于建立松散连接的应用程序并实现互操作性。松散连接的应用程序使你能重新配置、重新部署或重新定位它的实现而不影响相关的应用程序。互操作

blog of eulota 1438

OpenCV-Python实战(11)——OpenCV轮廓检测相关应用

在计算机视觉领域,轮廓通常指图像中对象边界的一系列点。因此,轮廓通常描述了对象边界的关键信息,包含了有关对象形状的主要信息,该信息可用于形状分析与对象检测和识别。在本文中,我们将学习如何利用获取到的轮廓,进行形状分析以及对象检测和识别。

盼小辉丶的博客 1万+

将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes ) [1]

将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes )   小气的神2002-5-25 Article Type: Overview  难度等级:5/9        版本:4.16        当Web Services不仅作为一种新技术,而且也作为一种对现有技术的整合时;它开始影响一

ccBoy的专栏 2263

24、手机GPS天线设计与有源GNSS天线性能评估

本文系统介绍了手机GPS天线的代表性设计,包括隔离磁偶极子、共面平衡偶极子和小型陶瓷加载QHA天线,分析了其结构特点、性能参数及适用场景。同时详细阐述了有源GNSS天线的组成结构与G/T比作为关键性能指标的评估方法,并提出了组件选择、噪声控制和增益提升等优化策略。最后展望了未来手机GPS天线在小型化、多频集成和智能适应性方面的发展趋势。

pytorch8learner的博客 720

Codex CLI 手机号验证失败?5 种接码平台实测对比与绕过地区限制的 3 步操作

揭示 Codex CLI 手机号验证失败的真实原因在于上下文污染而非网络问题,分析其通过 ASN、Accept-Language 和 TLS SNI 三重加权风控的机制,并实测对比 5 种接码平台在 DNS 解析路径、ASN 干净度和复用间隔上的差异,提出剥离浏览器指纹、固化 TLS SNI、隔离

weixin_42627902的博客 731

将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes ) [2]

将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes )   小气的神2002-5-25 Article Type: Overview  难度等级:5/9        版本:4.16  使用HTTP访问SQL Server的多种方式首先我们可以通过Http协议访问SQL 2000,

ccBoy的专栏 1654

YOLOv11改进策略【损失函数篇】| 替换激活函数为Mish、PReLU、Hardswish、LeakyReLU、ReLU6

在卷积神经网络中,激活函数通过在神经网络中引入非线性,使网络能够学习和逼近复杂函数,从而处理复杂的模式识别与分类问题。

Limiiiing的博客 2790

将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes ) [2] (转)

将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes ) [2] (转)[@more@]XML:namespace prefix = o ns = "urn:schem...

csd3176的博客 164

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

SQL对Xml字段的操作

  T-Sql操作Xml数据 一、前言 SQL Server 2005 引入了一种称为 XML 的本机数据类型。用户可以创建这样的表,它在关系列之外还有一个或多个 XML 类型的列;此外,还允许带有变量和参数。为了更好地支持 XML 模型特征(例如文档顺序和递归结构),XML 值以内部格式存储为大型二进制对象 (BLOB)。 用户将一个XML数据存入数据库的时候,可以使用这个XML的字符串...

weixin_33978016的博客 950

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

我的.NET书架 (入门篇)

 我的.NET书架 (入门篇) 小气的神2003-01-05 Article Type: OverView  难度等级:1/9        版本:1.02 好书永远是学习的良师益友,网友永远是进步的学习榜样,而网页就是一种对话一种分享。下面的书都是针对刚刚入门的”.NET CLR Developer”,这些书适用在刚刚从Java、C/C++环境

ccBoy的专栏 4125

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

我的.NET书架 (进阶篇)

 我的.NET书架 (进阶篇) 小气的神2003-01-06 Article Type: OverView  难度等级:1/9        版本:1.20 对于已经熟悉和习惯.NET Framework开发环境的开发人员,还需要面临另外一个.NET的开发学习曲线和阶段,那就是活学活用.NET技术到自己原来的开发经验中,到新的新的应用开发中。典型的有

ccBoy的专栏 3708

应用WSDK - 实践Web Services的X.509证书签名(序)

应用WSDK - 实践Web Services的X.509证书签名 小气的神 2002-12-18 Article Type: OverView  难度等级:2/9        版本:1.18        好了,我想这是一个美貌的时刻,至少对于许多平凡、依赖、新潮而且很Cool的微软开发人员来说,WSE 1.0(Web Services Enha

ccBoy的专栏 2983

应用WSDK -附录如何使用SOAP Trace Utility进行调试

应用WSDK -附录如何使用SOAP Trace Utility进行调试  小气的神2002-12-05 Article Type: Overview  难度等级:3/9        版本:1.20 这个附录是用来说明,我们在Web Services应用开发过程中,如何查看Web Services Client和Web Services Server端

ccBoy的专栏 2812

开始你的第一个多语言版本的dotNET 应用程序(WinForm篇)

开始你的第一个多语言版本的dotNET 应用程序(WinForm篇)  小气的神 2001-09-22 多语言版本的应用程序曾是一个门槛,迈过去意味着它可以面对更多的使用者。对于商业程序来说一个本地化的版本意味着可能打开一个更大的市场。中文版也曾是我们心中有关中国软件的一个情结和期望。希望dotNET能给我们带来一些不同的观点和变革,让我们重新看待自己的每一个软件应用。

ccBoy的专栏 2372

一个四层应用体系架构 [CBOFramework C# Beta 1 ]

一个四层应用体系架构 [CBOFramework C# Beta 1 ] 小气的神2002-5-12 Article Type: Overview  难度等级:7/9        版本:3.22        有关dotNET下的应用体系构架的话题,我们可以明确的从某一点开始,但是可能没有结束的那一点,永远没有:) 一大批原来COM+的程序员开始在CO

ccBoy的专栏 2295

Visual Studio.NET快捷键最爱收藏(多图)

Visual Studio.NET快捷键最爱收藏  小气的神 2002-01-23 Article Type: Information难度等级:0/9          版本:1.16     这个收藏展示的灵感来源于前些天我在优快云发的帖子《升级到Visual Studio.NET 的10个理由》和《不升级到Visual Studio.NET 的10

ccBoy的专栏 2254

Microsoft Content Management Server 2002 bate1 速递(多图)

Microsoft Content Management Server 2002 bate1 速递(多图)  小气的神2002-07-17 Article Type: Overview  难度等级:1/9        版本:1.02        两天前,Microsoft发布了Microsoft Content Management Server

ccBoy的专栏 2237

ASP.NET Authentication Provider

ASP.NET Authentication Provider  小气的神 2001-12-20 Article Type: Overview 难度等级:3/9        版本:1.12 ASP.NET 提供了一些新型的Authentication 和 Authorization 方案,对于开发人员来说这将是和以前不同的一种方式。可喜的是ASP.NE

ccBoy的专栏 2109

ccBoy(.NET专栏):五一,五一之后

五一,五一之后  小气的神2002.05.01 Article Type: Overview  难度等级:2/9        版本:1.48        五一是劳动节,可以休假,所以有时间做一些你平时想做而没有做的事情,比如下面我叙述的这一件。        Microsoft大约在3周之前发布了Microsoft Smart Devic

ccBoy的专栏 1953
上一篇: 将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes ) [4]
下一篇: 将SQLXML 3.0用起来( Web Services, XML Views, Managed Classes ) [2]
ccBoy
博客等级 码龄26年 6粉丝 96原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值