Sybase数据库使用总结

本文总结了Sybase数据库的使用经验,包括利用XML类型的字段作为查询条件,使用XMLATTRIBUTES为XML元素添加属性,并介绍了如何在存储过程中创建主键自增的临时表。


1、对xml类型的字段作为查询条件

XmlValue字段中存储的内容

<ContentInfo><CFBundleVersion>1.0</CFBundleVersion><CFBundleIdentifier>com.ciat.mobile.HKMobileEGov</CFBundleIdentifier><CFBundleName>Zak</CFBundleName><CFBundleDisplayName>Zak</CFBundleDisplayName></ContentInfo>

查询的存储过程

ALTER PROCEDURE "DBA"."xml_select_condition"()
BEGIN
    SELECT XmlID,XmlValue FROM Justsy_Xml WHERE (SELECT VER FROM OPENXML(XmlValue,'/ContentInfo/CFBundleVersion') WITH ("VER" LONG VARCHAR '.'))='1.10' ;
END


2、XMLATTRIBUTES为XML元素添加属性,如果不取别名就使用填写的作为属性名

SELECT XMLELEMENT(NAME Device,XMLATTRIBUTES(DeviceID AS D,ContactName)) FROM Device WHERE DeviceID > 400


结果显示:

<Device D="410" ContactName="OPOAAA"/>



3、XMLCONCAT对两个XML进行连接

SELECT XMLCONCAT(XMLELEMENT(NAME DeviceID,DeviceID),XMLELEMENT(NAME ContactName,ContactName)) AS DeviceXML FROM Device ;

结果:

<DeviceID>427</DeviceID><ContactName>ww</ContactName>

4、XMLFOREST( element-content-expression [ AS element-name ],... )element-content-expression   一个字符串。对每个所指定的 element-content-expression 参数生成一个元素。element-content-expression 值将成为元素的内容。

SELECT DeviceID,XMLELEMENT(NAME Device,XMLFOREST(PhoneNum AS phoneNum,ContactName AS contactName)) FROM Device WHERE DeviceID > 400 ;


结果:

<Device><phoneNum>13022362323</phoneNum><contactName>OPOAAA</contactName></Device>


5、在存储过程创建主键自增临时表

DECLARE LOCAL TEMPORARY TABLE SplitTable ( SortKey INTEGER DEFAULT AUTOINCREMENT, OriVal VARCHAR(20), ComVal VARCHAR(20), PRIMARY KEY(SortKey));














评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值