XML与SQL数据库
- 格式:doc
- 大小:15.50 KB
- 文档页数:3
SQL对Xml字段的操作T-Sql操作Xml数据一、前言SQL Server 2005 引入了一种称为XML 的本机数据类型。
用户可以创建这样的表,它在关系列之外还有一个或多个XML 类型的列;此外,还允许带有变量和参数。
为了更好地支持XML 模型特征(例如文档顺序和递归结构),XML 值以内部格式存储为大型二进制对象(BLOB)。
用户将一个XML数据存入数据库的时候,可以使用这个XML的字符串,SQL Server会自动的将这个字符串转化为XML类型,并存储到数据库中。
随着SQL Server 对XML字段的支持,相应的,T-SQL语句也提供了大量对XML操作的功能来配合SQL Server中XML字段的使用。
本文主要说明如何使用SQL语句对XML进行操作。
二、定义XML字段在进行数据库的设计中,我们可以在表设计器中,很方便的将一个字段定义为XML类型。
需要注意的是,XML字段不能用来作为主键或者索引键。
同样,我们也可以使用SQL语句来创建使用XML字段的数据表,下面的语句创建一个名为“docs”的表,该表带有整型主键“pk”和非类型化的XML 列“xCol”:CREATE TABLE docs (pk INT PRIMARY KEY, xCol XML not null)XML类型除了在表中使用,还可以在存储过程、事务、函数等中出现。
下面我们来完成我们对XML操作的第一步,使用SQL语句定义一个XML类型的数据,并为它赋值:declare @xmlDoc xml;set @xmlDoc='<book id="0001"><title>C Program</title><author>David</author><price>21</price></book>'三、查询操作在定义了一个XML类型的数据之后,我们最常用的就是查询操作,下面我们来介绍如何使用SQL 语句来进行查询操作的。
sql xml参数摘要:1.SQL 与XML 的概述2.SQL XML 参数的作用与意义3.SQL XML 参数的使用方法4.SQL XML 参数的实际应用案例5.总结正文:1.SQL 与XML 的概述SQL(Structured Query Language,结构化查询语言)是一种用于管理关系型数据库的编程语言,它可以进行数据的查询、插入、更新和删除等操作。
XML(eXtensible Markup Language,可扩展标记语言)是一种用于描述数据结构的文本格式,它具有很强的可扩展性和通用性。
2.SQL XML 参数的作用与意义在SQL 中,XML 参数是一种特殊的数据类型,用于存储和处理XML 数据。
XML 参数在SQL 查询中具有重要作用,它可以让开发者更加方便地处理XML 数据,提高开发效率。
同时,XML 参数也有助于实现SQL 与XML 的互操作,使得两种数据格式可以互相转换和利用。
3.SQL XML 参数的使用方法在SQL 中,使用XML 参数主要分为以下几个步骤:(1)声明XML 参数:在使用XML 参数之前,需要先声明它,声明方法与声明普通变量相似,如:CREATE PARAMETER xml_param AS XML。
(2)赋值:可以通过SET 语句给XML 参数赋值,如:SETxml_param = "<root><element>Value</element></root>";。
(3)查询:在SQL 查询中,可以使用XML 参数进行查询,如:SELECT * FROM table_name WHERE xml_column LIKE CONCAT("%", xml_param, "%");。
(4)更新:通过UPDATE 语句,可以使用XML 参数更新数据库表中的数据,如:UPDATE table_name SET xml_column = CONCAT(xml_column, xml_param);。
使⽤XML对SQLSERVER数据库中数据进⾏批量修改Bulk update the datas of SQL SERVER(2005 OR 2008) using XMLwhen we update data ,we firstly use the Class of StringBuilder to build the string of XML:StringBuilder builder=new StringBuilder();builder.Append("<root>");builder.AppendFormat("<ID>{0}</ID>",ID.Text);builder.AppendFormat("<dataName>{0}</dataName>",dataName.Text);builder.AppendFormat("<UseName>{0}</UseName>",UseName.Text);builder.Append("</root>");Secondly,we create procedure in SQL :set ANSI_NULLS ONset QUOTED_IDENTIFIER ONgocreate PROCEDURE [dbo].[Update....](@XMLCustomer XML)ASBEGINUPDATE CustomerSET CustName=TempCustomer.Item.value(, 'VARCHAR(50)'),CustState=TempCustomer.Item.value(, 'VARCHAR(50)')FROM @XMLCustomer.nodes('/root/row') AS TempCustomer(Item)WHERE ID=TempCustomer.Item.value(, 'INT')RETURN 0ENDThirdly:T_SQL FOR Operate SQL DataBase................Test:declare @data xmlset @data='<Tags><Tag><HouseID>13c099d2-1378-41cd-8266-22537efe0ff3</HouseID></Tag><Tag><HouseID>2AB284E4-9315-4AE5-B325-AF09AE423320</HouseID></Tag><Tag><HouseID>D1B3BB46-DD65-4830-85E9-6CB87108B2EF</HouseID></Tag> </Tags>'--修改House表的ISEnable为0SELECTT.V.value('HouseID[1]','UNIQUEIDENTIFIER') as HouseIDINTO #TagsReportFROM @data.nodes('//Tags/Tag') AS T(V)UPDATE dbo.tb_HCS_HouseSET ISEnable=0from dbo.tb_HCS_House tb_hleft join #TagsReport as rep on rep.HouseID=tb_h.HouseIDWHERE rep.HouseID is not nullDROP TABLE #TagsReport。
XMLSQL语句是一种用于处理XML数据的SQL语句,用于在数据库中操作XML数据结构。
下面是对XMLSQL语句的详细解释:1. CREATE XMLSCHEMA: 用于创建一个XML模式,用于定义XML文档的结构。
语法为CREATE XMLSCHEMA,后面跟随模式名和模式定义。
2. CREATE XMLINDEX: 用于在数据库中创建一个XML索引,用于加速XML文档的查询操作。
语法为CREATE XMLINDEX,后面跟随索引名、索引类型和索引表达式。
3. SELECT XMLFOREST: 用于将XML文档转换为嵌套的XML元素树,以便于查询和处理。
语法为SELECT XMLFOREST(元素列表),其中元素列表是一个包含元素名称和值的列表。
4. SELECT XMLQUERY: 用于查询XML文档中的特定元素或子元素的值。
语法为SELECT XMLQUERY(查询表达式),其中查询表达式是一个用于选择元素的表达式,可以是XPath表达式或模式匹配表达式。
5. INSERT INTO XMLVALUE: 用于将值插入到XML文档中的特定位置。
语法为INSERT INTO XMLVALUE(元素名称, 值),其中元素名称是要插入的元素的名称,值是要插入的值。
6. UPDATE XMLATTRIBUTE: 用于更新XML文档中元素的属性值。
语法为UPDATE XMLATTRIBUTE(元素名称, 属性名称, 新值),其中元素名称是要更新的元素的名称,属性名称是要更新的属性,新值是新的属性值。
7. DELETE FROM XMLFOREST: 用于从嵌套的XML元素树中删除指定的元素或子元素。
语法为DELETE FROM XMLFOREST(元素列表),其中元素列表是一个包含要删除的元素的名称的列表。
这些是XMLSQL语句的一些基本用法和示例,可以根据具体需求进行扩展和调整。
需要注意的是,不同的数据库系统对XML数据的支持程度不同,语法和功能可能会有所差异。
设计数据库的时候为了操作的⽅便,我们可以选择⽤xml格式⽂件来保存我们的数据表结构及其数据。
这样的好处是多⽅⾯的,设计简单,操作⽅便,⾃⼰可以开发⼀个设计数据库表的应⽤程序直接对xml⽂件进⾏操作。
其实另外⼀个好处是在最终使⽤的时候很容易将xml数据导⼊到任何我们想要的数据库中,不过注明的是这中设计的⽅法只在于简便,不可能达到其他专门⼯具的功能了,但针对实践⾃⼰的设计思路来说不是为⼀个好⽅法。
以下为从xml导⼊sql中的⼀种⽅法:(1)我们先选种⼀个我们已经设计好的含数据表结构和数据的⽂件(2)我们选⽤的中转数据库为access2003,这个已经很普及了(3)打开access2003⼀个(4)打开:⽂件-获取外部数据库-导⼈(5)在弹出的对话框中选择⼀个xml格式的⽂件,也即你设计好的含数据结构及数据的那个⽂件(6)点选开始进⼊“导⼊xml”对话框,此时你的xml⽂件中的表结构已经呈现出来了(7)确定-完成(8)这个时候整个xml⽂件就导⼊到access中来了如下在视图中可以看到已经导⼊了⼀个表(9)现在我们可以验证⼀下数据是否完整,我们建⽴的access空数据库保存的位置:C:\db1.mdb,通过以下的查询语句可以显⽰我们需要的数据看看我们已经查询到数据了表的结构和数据都和我们先前设计的⼀模⼀样(8)数据结构和数据都进access了,在怎么整就如你玩弄股掌了......,就挑个语句先......这样我们就在我们想要的数据中建⽴⼀个新表,表名为newtable,表的字段都已经⾃动完成,数据也⾃动导⼊进来!但这样有⼀个问题是:你看在我们整个过程中我们都没有去管数据字段类型、⼤⼩的问题,所以在我们最终将xml数据导⼊到sql后呵呵看看你所有的字段的数据类型你就明⽩了哪位仁兄有好的解决⽅法别忘了告诉我列。
sql xml文件语法摘要:1.SQL 与XML 文件的关系2.SQL XML 文件的语法规则3.XML 文件在SQL 中的应用场景4.XML 文件对SQL 数据操作的影响5.XML 文件在SQL 数据库设计中的重要性正文:SQL XML 文件语法是指在SQL 中使用XML 文件进行数据存储、查询和操作的相关语法规则。
XML(可扩展标记语言)是一种用于描述数据的文本格式,它可以存储结构化数据和半结构化数据。
SQL(结构化查询语言)是一种用于管理关系型数据库的编程语言。
将XML 文件与SQL 结合,可以更灵活地存储和管理数据。
1.SQL 与XML 文件的关系SQL 与XML 文件的关系主要体现在它们可以相互转换。
将SQL 查询结果转换为XML 格式,可以方便地查看和处理数据;将XML 文件导入SQL 数据库,可以实现数据的存储和管理。
这种转换可以通过SQL 的XML 函数实现。
2.SQL XML 文件的语法规则SQL XML 文件的语法规则主要包括以下几点:- XML 标识符:在SQL 中,XML 标识符以“XML”开头,如XMLTYPE、XMLSERIALIZE 等。
- XML 数据类型:在SQL 中,XML 数据类型用于存储XML 格式的数据。
例如,在Oracle 数据库中,可以使用XMLTYPE 来定义XML 数据类型。
- XML 函数:SQL 提供了许多XML 函数,如XMLPARSE、XMLEXISTS、XMLSERIALIZE 等,用于处理XML 文件。
3.XML 文件在SQL 中的应用场景XML 文件在SQL 中的应用场景包括:- 存储XML 格式的数据:当需要存储半结构化或非结构化数据时,可以将数据存储为XML 文件,并将其与SQL 数据库关联。
- 查询XML 数据:通过SQL 的XML 函数,可以方便地查询XML 文件中的数据。
例如,可以使用XMLQUERY 函数对XML 文件进行查询。
sql xml文件语法摘要:1.SQL与XML文件的关系2.SQL XML文件的语法结构3.SQL XML文件的数据类型4.SQL XML文件的应用场景5.总结正文:SQL XML文件是一种用于存储SQL查询结果的文件格式,它将SQL查询结果以XML格式进行存储,以便于后续的解析和处理。
在数据库管理和数据处理领域中,SQL XML文件被广泛应用。
1.SQL与XML文件的关系SQL(Structured Query Language,结构化查询语言)是一种用于管理关系型数据库的编程语言,它可以用来查询、插入、更新和删除数据库中的数据。
而XML(eXtensible Markup Language,可扩展标记语言)是一种用于描述数据结构和数据交换的文本格式。
SQL XML文件将SQL查询结果以XML 格式存储,方便了数据的传输和解析。
2.SQL XML文件的语法结构SQL XML文件的语法结构遵循XML文件的基本规则,包括元素、属性、字符串和实体等。
在SQL XML文件中,查询结果被表示为一系列的XML元素,每个元素对应一个查询结果列。
元素包含属性,用于表示列的数据类型和约束等信息。
SQL XML文件的基本结构如下:```<resultset><result><column name="column_name" data_type="data_type" /><value>column_value</value></result><!-- 更多的结果元素--></resultset>```3.SQL XML文件的数据类型SQL XML文件中的数据类型主要包括:- 字符串类型(如VARCHAR、CHAR等)- 数字类型(如INTEGER、DECIMAL等)- 日期和时间类型(如DATE、TIME等)- 二进制数据类型(如BLOB、CLOB等)在XML文件中,数据类型被表示为`data_type`属性,如:```<column name="column_name" data_type="VARCHAR" />```4.SQL XML文件的应用场景SQL XML文件主要应用于以下场景:- 数据库查询结果的存储和传输:将查询结果以XML格式存储在文件中,方便在不同的系统之间传输和解析。
XML和SQL Server集成创建和管理XML索引前面已经介绍过,XML数据类型以二进制大对象的格式保存于XML数据类型的字段中,因此在查询这些字段时,SQL Server 2008需要在运行时刻对数据表中的每条记录进行细化,将一个XML数据类型字段中存放的XML文档转换到关系数据库中的每张数据表中,以便对其中的信息进行查询。
显然完成这一操作必然会加重SQL Server系统的负担,降低整个查询工作的效率。
因此为了提高对XML字段进行查询的效率,建议为XML类型的字段建立XML索引。
像其他大多数数据类型的字段一样,用户也可在XML字段上创建一个XML 索引,创建XML索引的语法与创建标准索引的语法相同。
XML类型的索引分为两种,即主索引(primary XML index)和辅助索引(secondary XML index)。
其中辅助索引必须建立于主索引的基础之上。
XML主索引建立于XML字段中XML文档里的所有标签和路径之上,因此为XML数据类型的字段创建一个主索引时,该主索引必定是一个簇索引。
而辅助索引又可分为三种类型,如表6-2所示。
表6-2 辅助索引类型创建XML索引的语法如下所示:其中相关参数的含义如表6-3所示。
表6-3 相关参数的含义中包含许多参数,例如可以在创建一个XML索引时指定DROP_EXISTING = { ON | OFF}选项,当该选项被设置为ON时,创建该索引前会判断是否已存在同名的索引,如果存在就先将它删除。
关于创建XML索引时可以使用的其他选项信息,读者可以查看Microsoft提供的联机帮助文档。
下面为数据表xml_Categories创建一个XML索引。
在【查询编辑器】中输入下面的Transact-SQL脚本。
单击【执行】按钮,创建该索引,如图6-6所示。
图6-6 创建索引用户可以通过SQL Server提供的系统视图sys.indexes来查看是否已成功地创建索引,其结果如图6-7所示。
一、介绍XML文件和SQL语句XML(eXtensible Markup Language)是一种标记语言,用于描述和存储数据。
它具有自我描述性和可扩展性的特点,常用于配置文件、数据交换和网页显示等方面。
SQL(Structured Query Language)是一种用于管理关系数据库的语言,其主要功能包括数据的查询、插入、更新和删除等操作。
在Java中,通常会使用XML文件存储SQL语句,特别是在MyBatis 等持久层框架中,常常会遇到在XML文件中使用foreach语句来处理批量操作。
二、XML文件中SQL的foreach语句用途1. 批量插入数据:在数据库操作中,经常需要批量插入一组数据,此时可以使用foreach语句将多条插入语句组织在一起,提高数据插入效率。
2. 批量更新数据:同样地,如果需要对一组数据进行批量更新操作,可以使用foreach语句将多条更新语句一起执行,减少与数据库的交互次数。
3. 批量删除数据:对于需要删除的多条数据,使用foreach语句可以一次性执行多条删除语句,提高删除操作的效率。
三、XML文件中SQL的foreach语句示例下面是一个简单的示例,演示了如何在XML文件中使用foreach语句进行批量插入操作:```xml<insert id="batchInsert" parameterType="java.util.List">INSERT INTO user (id, name, age) VALUES<foreach collection="list" item="item" index="index" separator=",">(#{item.id}, #{}, #{item.age})</foreach></insert>```在这个示例中,我们定义了一个id为"batchInsert"的插入操作,参数类型为java.util.List。
xml配置SQL语句现在很多软件都直接使⽤ORM框架来进⾏数据库操作,也就此出现代码优先。
ORM框架⼀个⿇烦是效率和复杂查询语句,在有些情况下并不好,⽽且难以控制⽣成的SQL.另外⼀种则是直接写SQL语句,对于c#来说就是.还有类似的框架,但是遗憾的是配置SQL的库还是有⼀定封闭性,基本和ORM绑定,或者需要⾃⼰操作数据库,没有将⽣成的SQL语句提供出来,我还没有找到类似的。
因此,轮⼦来了。
采⽤XML配置SQL语句,⼀个语句就是⼀个Statement节点,携带ID属性,ID标记需要使⽤的SQL⽅法,程序将⾃动反射调⽤的类名称,⽅法名称,分别作为xml⽂件名称和节点名称。
然后解析xml;xml内部节点被映射成程序⽅法,主要有Isnotempty映射实体属性为空判断,Dynamic映射我们⼀般的条件判断,引⽤了动态linq,⽅法的参数映射成SQL的参数。
定义的主要节点:where ,set,choose,when,othersize,witch,case,default,page判断连接条件节点:IsNotEmpty,Dynamic类似你会看见:<Statement Id="Test" >select * from test where id=@id</Statement>或者扩展<Statement Id="Test" >select * from test<where IsNotEmpty="name">name=@name</where></Statement>初步项⽬:。
XML与SQL数据库XML和SQL数据库是两种不同类型的数据存储方式,都有着各自的优缺点。
XML作为一种非常灵活的文本格式,在互联网应用中得到了广泛的应用,而SQL数据库则是常用的关系型数据库之一,也是传统IT行业的主流技术之一。
XML是一种基于文本的格式,可用于描述数据的结构和内容。
它具有相对自由的格式,可以通过标记语言来定义数据的结构和属性。
XML具有广泛的应用领域,包括Web服务、数据传输和配置文件等。
相比较而言,XML的优势在于它的灵活性和可读性。
因为它是文本格式,所以易于传输和阅读。
此外,它还具有语义明确,易于理解的特点,使其在应用开发中显得非常有用。
SQL数据库则采用数据表的方式存储数据,采用结构化查询语言来管理和处理数据。
它广泛应用于传统的企业应用程序中,如财务系统、人事管理等。
SQL数据库具有完善的设施,包括索引、备份、恢复以及数据复制等。
因此,SQL数据库可以实现更高效的数据存储和查询,并具有更强的数据一致性和完整性。
尽管XML和SQL数据库的应用场景和特点各不相同,但它们之间可以互相补充。
XML可以作为一种半结构化数据的格式,将数据存储在XML文档中。
在应用领域中,可以从XML文件中读取或更新数据。
此外,XML也可以作为一个技术中间件,用于在不同应用程序之间传递数据。
例如,Soap协议就是一种基于XML的Web服务协议。
SQL数据库可以对结构化数据进行有效管理,包括增删改查以及数据的备份和恢复。
在应用开发中,可以通过XML与SQL数据库进行数据交换和互操作。
此外,通过SQL数据库的查询功能可以方便地查询与过滤数据,查询结果可以通过XML格式返回客户端。
总体来讲,XML和SQL数据库都有各自的适用场景,可根据应用开发的具体需求来选择合适的存储方式。
许多企业已经在采用XML和SQL数据库的混合模式来存储和管理数据。
因此,作为IT领域的从业者,必须了解XML和SQL数据库之间的区别和特点,并结合实际应用场景进行选择。
sql 存储过程中xml参数(最新版)目录1.SQL 存储过程概述2.XML 参数的定义与使用3.SQL 存储过程中 XML 参数的优点4.实际应用示例正文1.SQL 存储过程概述SQL 存储过程是一种预编译的 SQL 语句集合,用于执行特定的任务。
它可以包含逻辑控制语句、数据操作语句以及其他 SQL 语句。
存储过程在数据库中存储,并在需要时调用。
它们允许用户在单个调用中执行多个SQL 语句,从而减少网络流量和提高性能。
2.XML 参数的定义与使用在 SQL 存储过程中,可以使用 XML 数据类型定义参数。
XML 参数允许用户在存储过程中传递 XML 数据。
在定义 XML 参数时,需要指定参数名、数据类型以及是否允许空值。
在调用存储过程时,需要将 XML 数据作为参数传递。
例如,定义一个包含 XML 数据的存储过程:```sqlCREATE PROCEDURE usp_insert_order_data@order_details XMLASBEGIN-- 处理 XML 数据的逻辑END```3.SQL 存储过程中 XML 参数的优点SQL 存储过程中使用 XML 参数具有以下优点:- 灵活性:XML 数据具有很强的结构化和可扩展性,可以方便地表示复杂的数据结构。
- 易于维护:使用 XML 参数可以简化存储过程的编写和维护,提高开发效率。
- 高性能:XML 参数可以有效地减少网络传输的数据量,提高数据库性能。
4.实际应用示例假设有一个订单管理系统,需要将订单的详细信息存储到数据库中。
可以使用 SQL 存储过程和 XML 参数来实现这个功能。
在XML循环插入的SQL语句中,您可以使用XML数据类型和XML函数来实现循环插入操作。
以下是一个示例SQL语句,用于循环插入XML数据到数据库表中:```sqlDECLARE @xml XML = '<root><row><id>1</id><name>John</name></row><row><id>2</id><name>Jane</name></row><row><id>3</id><age>25</age></row></root>';DECLARE @table_name NVARCHAR(50) = 'YourTable';DECLARE @counter INT = 1;INSERT INTO @table_name (id, name, age)SELECT id, name, ageFROM OPENXML(@counter, '/root/row', 2) WITH (id INT '@id',name NVARCHAR(50) '@name',age INT '@age');```在上述示例中,我们首先声明了一个XML变量`@xml`,其中包含了要循环插入的数据。
然后,我们指定了要插入数据的表名`@table_name`和计数器变量`@counter`。
接下来,我们使用`OPENXML`函数从XML数据中提取数据,并将其插入到数据库表中。
具体来说,我们使用`OPENXML`函数在XML数据中定位到特定的节点路径(这里为`/root/row`),并使用`WITH`子句指定每个节点的数据类型和属性名称。
xml sql写法XML是一种用于存储和传输数据的标记语言,而SQL是一种用于管理关系型数据库的标准查询语言。
在数据库管理系统中,XML常常被用来作为数据的格式,而SQL则是用来操作这些数据的语言。
XML SQL写法是指使用SQL语法来查询和操作XML数据。
在XML SQL写法中,可以使用多种方式来查询和操作XML数据。
下面是一些常见的XML SQL写法参考内容。
1. XQueryXQuery是一种用于查询XML数据的语言,它是XPath的扩展。
XQuery允许用户按照其需要的方式访问和查询XML数据,它具有XPath中的所有功能,并添加了一些其他功能。
XQuery使用FLWOR表达式来查询XML数据,FLWOR包含以下组成部分:for、let、where、order by和return。
2. SQL/XMLSQL/XML是一种用于查询XML数据的SQL标准。
它是SQL2003的一部分,它允许用户使用SQL查询语言来查询XML数据,返回一个XML结果集。
SQL/XML使用FORXML子句来指定XML输出格式,它还提供了XMLAGG函数来将多条记录组合成一个XML文档。
3. XMLTABLEXMLTABLE是一种用于将XML数据转换为关系型数据的SQL函数。
它接受XML文档作为输入,然后返回关系型数据表。
XMLTABLE需要用户指定XML文档的路径,以及所需的列和数据类型,然后它会将XML文件转换为关系型数据表。
4. XPathXPath是一种用于在XML文档中定位节点的语言。
XPath可以通过路径表达式来访问XML节点,它支持多种查询和操作XML节点的函数。
XPath语法类似于文件系统路径,在语法上非常简单易懂。
5. XMLDIFFXMLDIFF是一种用于比较两个XML文档之间的差异的工具。
它可以比较XML文档之间节点的添加、删除和修改等差异,并提供了一个XML差异报告。
XMLDIFF可以用于比较两个版本的XML文档并高度可视化,以便于查找差异。
XML与SQL数据库
作者:刘立平
来源:《数字技术与应用》2015年第07期
摘要:XML的核心是描述数据的组织结构,它可以作为数据交换的标准格式。
SQL数据库在数据查询、修改、保存、安全等方面具有其他数据处理手段无法替代的地位。
一个系统获得一个XML文件后,可能需要将XML中的某些标记包含的文本内容转化为数据库中表的一条记录;另一方面,一个应用系统可能需要将数据库表中的某些记录转化为一个XML文件,以便与其他系统交互数据,发挥XML文件在数据交换上的优势。
关键词:XML SQL数据库数据交换
中图分类号:TP311.13 文献标识码:A 文章编号:1007-9416(2015)07-0000-00
1 XML
XML(eXtensible Markup Language)是可扩展标记语言,XML是由万维网联盟定义的一种语言,是表示结构化数据的行业标准。
它使得Internet上的数据相互交流更加方便,让文件的内容更加显而易懂。
XML不仅提供了直接在数据上工作的通用方法,还可以将用户界面和结构化数据相分离,允许不同来源的数据的无缝集成和对同一数据的多种处理。
XML包括一系列相关技术,其中主要内容有:规范的XML、有效的XML文件、XML与CSS、XML与XSL、基于DOM的解析器、XML Schema模式、XML与数据库等等知识。
2数据库
数据库(DataBase,简称DB)是存放数据的仓库,是为了满足某一部门中多个用户的多种应用的需要,安装一定的数据模型在计算机中组织、存储和使用的相互联系的数据集合。
数据库系统就是管理大量的、持久的、可靠的和共享的数据的工具。
数据库管理系统软件的种类有很多,但常用的也就那么三五种:ORACLE、My SQL、ACCESS、MS SQL Server这些是不同领域常用的数据库管理系统软件。
其中ORACLE和MS SQL Server最为常见,这里以MS SQL Server为例, SQL server数据库是美国微软公司发布的一款RMDBS数据库,也就是关系型数据库系统。
SQL server的优点为:
(1)真正的客户服务器体系结构。
(2)图形化用户界面,更加直观、简单。
(3)丰富的编程接口工具,为用户进行程序设计提供更多选择余地。
(4)SQL server和Windows NT完成集成,可以利用NT的愈多功能。
(5)具有很好的伸缩性,可跨界运行。
(6)对web技术的支持,使用户能够容易的将数据库中的数据发布到web上。
3 XML与数据库的关系
怎样让Internet上的信息交互更加方便?这便是W3C制定XML的目的,XML的核心是描述数据的组织结构,它可以作为数据交换的标准格式,允许不同来源数据的无缝集成和对同一数据的多种处理。
而数据库在数据查询、修改、保存、安全等方面具有其他数据处理手段无法替代的地位。
一个系统获得一个XML文件后,可能需要将XML中的某些标记包含的文本内容转化为数据库中表的一条记录;另一方面,一个应用系统可能需要将数据库表中的某些记录转化为一个XML文件,以便与其他系统交互数据,发挥XML文件在数据交换上的优势。
那么XML与数据库是怎样进行数据交换的呢?也就是说怎样将XML文件中的一组标记包含的内容转化为数据库中表的一条记录,以及怎样将数据库中表的若干条记录转化为一个XML文件的呢?
3.1建立数据库并创建数据表
启动SQL server窗口,在左侧的“对象资源管理器”中展开目录,在出现的“数据库”目录上右击鼠标,执行“新建数据库”,在出现的窗口中进行“数据库名称”等的输入与设置。
同样在左侧的“对象资源管理器”中展开“数据库”,再展开刚新建的数据库,在出现的“表”目录上右击鼠标,执行“新建表”命令,在出现的窗口中先建立数据表结构,完成后保存,输入表名称,再单击“确定”按扭,这时出现输入记录窗口,根据需要输入几条数据记录,最后单击保存添加按钮。
3.2连接数据库
(1)为数据源选择驱动程序。
在“控制面板”中双击“管理工具”,在出现的窗口中双击“数据源(ODBC)”,在出现的界面中选择“用户DSN”选项卡,单击“添加”按钮,在出现“创建新数据源”的界面中选择您想为其安装数据源的驱动程序为“SQL Server”,最后单击“完成”铵钮,接下来设置数据源名称(一般为上步中建立的数据表名称)和连接的SQL Server服务器,最后按提示设置登录的方式等。
(2)建立连接。
首先“建立JDBC-ODBC桥接器”,JDBC使用ng包中的Class类建立JDBC-ODBC桥接器。
然后和数据库建立连接,先使用java.sql包中的Connection类声明一个对象,然后再使用DriverManager类调用它的静态方法getConnection创建这个连接对象。
3.3 XML与数据库中数据交换
(1)XML至SQL数据库。
理论上先使用DOM解析器获取标记中的数据,即将XML中的某些标记包含的文本内容转化为数据库中表的一记录,然后将获取的文本数据作为一条记录添加到数据库中。
(2)SQL数据库至XML。
首先连接数据库查询记录,再将记录中字段值作为标记的内容。
XML与数据库中数据进行交换需要java程序帮忙,而java程序所占篇幅较大,这里就不写详细代码了。
笔者在教学过程中将XML与SQL数据表中的数据进行过交换,且交换能成功进行。
参考文献
[1]耿祥义,张跃平,XML实用教程.北京:人民邮电出版社,2009.10,ISBN 978-7-115-20789-0/TP2.
[2]余芳,肖蓉,刘蔚琴,SQL Server 2005数据库管理与开发,北京:冶金工业出版社,2006.11 ISBN 7-5024-4135-2.
[3]阎宏艳,王海波.数据库应用技术-SQL Server篇,哈尔滨工业大学出版社,2013.1 ISBN,978-7-5603-3853-8.
收稿日期:2015-06-30
作者简介:刘立平(1972—),女,湖南桃源人,本科,助教,研究方向:数据库教学与研究。