MySQL中XML数据的XPath支持(4)
来源:asp之家 发布时间:2009-12-15 21:57:00
强检查变量
正是由于上面的原因,强烈建议使用强检查变量,这并没什么奇怪的,因为强检查变量作为计算机编程语言的一个标准已经有很长一段时间了,如果要使用$variable_name语法,需要在存储过程中声明变量,这样的变量属于本地变量,是要进行类型和值的检查的。
下面的存储过程接受一个xml_data字符串,并将ExtractValue()函数返回的结果添加到一个临时表中,这样我们就可以一次查询所有的城市了。
DELIMITER |
CREATE PROCEDURE get_cities(IN 'xml_data' varchar(255))
BEGIN
DECLARE i INT DEFAULT 1;
DECLARE city_name VARCHAR(100);
CREATE TEMPORARY TABLE cities (
match_number INT UNSIGNED NOT NULL DEFAULT 0,
name VARCHAR(100) NULL );
SET city_name = ExtractValue(xml_data, '//state[$i]');
WHILE city_name != "" DO
INSERT INTO cities
SELECT i, city_name;
SET i = i+1;
SET city_name = ExtractValue(xml_data, '//state[$i]');
END WHILE;
SELECT * FROM cities;
DROP TABLE cities;
END |
DELIMITER ;
CALL get_cities(@xml_cities);
+--------------------+------------+
| match_number | name |
+--------------------+------------+
| 1 | Chicago |
+--------------------+------------+
| 2 | Ocean City |
+--------------------+------------+
1 row in set (0.01 sec)
小结
虽然在MySQL中使用XML还有些限制,但每个新版本都会带来更多的与XML相关的功能,也有第三方厂家提供了工具来弥补这些缺陷。我希望未来看到支持新的,冗余更少的数据格式标记,如JSON。


猜你喜欢
- asp+access用户登录代码,loginnew.asp网面包含了登录框及验证用户的代码an.mdb数据库名fd表名y_username用
- 表示文字链接最清楚的方式是“蓝色文字+下划线”,这是在浏览器发展过程中形成的。这个问题大家都说过很多次了,我也曾经说过。然而,这样的规范却总
- 发一个数字拼图游戏,有点小疑问前几天写得,其中一段代码还要感谢“簡簡單單愛妳”的提示,不过我还是不太明白, ,有点笨。 $(&qu
- 对于注入而言,错误提示是极其重要。所谓错误提示是指和正确页面不同的结果反馈,高手是很重视这个一点的,这对于注入点的精准判断至关重要。本问讨论
- Data Points Archive 有时, 为了让应用程序运行得更快,所做的全部工作就是在这里或那里做一些很小调整。啊,但关键在于确定如
- 什么是PHPPHP代表了"超文本处理器",这意味着你必须知道,它是一种服务器端的处理语言,且以HTML的形式出现。它最常
- aspjpeg组件实现加水印函数的调用方法: <%printwater "/images/水印图片.gif",&q
- 用IIS调试ASP程序时,有的页面可以显示出错行及出错原因,虽然原因不是很具体但足以引导调试程序,但有些时候就直接出现:HTTP 500 -
- 表单外观的美化很多时候,我们仅仅为了实现数据采集这个功能来使用表单,常看到的表单都是“千人一面”、毫无
- 字体大小CSS2规范根据长度——水平和垂直尺寸——来定义字体。这个长度为一个数值,前面可能带一个可选的加(+)或减(-)标记符。另外,该数值
- 有一天我突发奇想,要是我每到一个网站,那里都能立刻调出我需要看的信息,那岂非美妙得很。接下来我想更深入地考虑这个问题,坐到椅子上拿一支铅笔,
- 当你连接一个MySQL服务器时,你通常应该使用一个口令。口令不以明文在连接上传输。所有其它信息作为能被任何人读懂的文本被传输。如果你担心这个
- 在ASP编程中,身份认证可以说是常要用到的。但怎么样才能做到认证的安全呢?表单提交页面:sub.htm &
- 由于众所周知的原因,ACCESS在大型站点应用中都靠不上边,主要问题就是数据量大了以后几乎无法索引。当ACCESS里数据过万后,明显可以感觉
- 很多朋友希望,我能把我做网站的一些流程及经验跟大家分享一下,最近刚好做一次内部培训,所以稍微整理了一下,这些只是针对网页初学者,具有一定平面
- Microsoft Access 数据库 (.mdb) 文件大小2 G 字节。不
- 内容摘要: Request和Response这两个对象是ASP所提供的内置对象中最常用的两个。在浏览器(或其他用户代理)和Web服
- 今天的问题是请问以下 alert 弹出值分别是什么?var f = function f2()&nb
- 学习自然语言的最好方法就是溶入相应的语言环境在交流中学习,学习一种编程语言的最好方法就是看例程。为了帮助大家建立wml应用的第一印象,所以请
- 由于一些读者对于960 Grid System CSS Framework的原理和使用方法比较感兴趣,暴风彬彬今天将和大家一同分享这篇关于9