斯是陋室,惟吾德馨

除了技术,还有更多值得关注……

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
   MySQL是一个高性能的开源DBMS,如果要构建基于大量查询、且对事务功能要求一般的应用来说,MySQL无疑是最佳备选方案之一。
   最近有个嵌入式方面的通讯项目,其中就用了MySQL 5,在编写存储过程中遇到一个问题,那就是如何在存储过程中构建SQL语句中引入参数。
   各位时间也有限,我长话短说。例如我们要构建一个简单的查询,表名是需要根据参数动态变化,直接写是肯定不行的,这里就不多描述了。那应该如何做了,我也直接上段代码,各位一看便明白。

#      该存储过程定义了几个传入参数,前缀都是para_
#      该存储过程的此部分功能是,查询根据传入参数动态生成的tbl_name表名的表中,有多少条和传入参数完#  全吻合的记录 
SET  tbl_name = CONCAT("result_", para_user);
SET @STMT := CONCAT("SELECT COUNT(*) INTO @num_count FROM ", tbl_name
                      ," WHERE rng = '", para_rng
                      ,"' AND north_latitude = ", para_north
                      ," AND bck_datetime = '", para_datetime
                      ,"' AND east_longitude = ", para_east, ";");
  PREPARE STMT FROM @STMT;
  EXECUTE STMT;
posted on 2006-08-07 00:11  Alex Lee  阅读(1117)  评论(0编辑  收藏  举报