mysql 存储过程 使用小结

来源:Asp之家 时间:2010-10-25 20:02:00 

1、动态sql, 即动态参数:

在存储过程中,想要直接用表名变量做参数,动态执行sql,不能直接写

<P>create procedure ( $tableName char(20) ) <P>BEGIN&nbsp; <P>select * from tableName; <P>END </P>



mysql 不支持表名作为变量,这样会直接将变量名“tableName”作为表名去查询,解决的方法是:

<P>BEGIN <P>SET @sql = concat('select * from ', $tableName); <P>PREPARE stmt1 FROM @sql; <P>EXECUTE stmt1; <P>DEALLOCATE PREPARE stmt1; <P>END; </P>



2 得到动态sql, select查询的结果:

可以直接 在sql 语句中 得到, "select * into @var" 就行了,后边就可以直接运用该变量了。

例子:

<P>SET @sql = concat('select max(id) into @max_id&nbsp; from ', $tableName); <P>PREPARE stmt1 FROM @sql; <P>EXECUTE stmt1; <P>DEALLOCATE PREPARE stmt1; </P>


此时,@max_id 就保存了查询结果

标签:存储过程,数据库,mysql
0
投稿

猜你喜欢

  • laravel执行php artisan migrate报错的解决方法

    2024-06-05 09:44:39
  • JavaScript+canvas实现七色板效果实例

    2023-08-09 09:48:10
  • 简析 IOS 程序图标的设计

    2011-04-28 09:39:00
  • asp分类算法要解决的问题

    2009-09-10 16:49:00
  • Python实现将多张图片合成视频并加入背景音乐

    2022-12-14 19:46:29
  • php下防止单引号,双引号在接受页面转义的设置方法

    2023-11-15 02:37:01
  • python threading模块的使用指南

    2023-08-10 07:51:59
  • 带你彻底搞懂python操作mysql数据库(cursor游标讲解)

    2024-01-25 21:53:58
  • Anaconda和Pycharm的安装配置教程分享

    2022-10-22 07:12:30
  • js实现根据文件url批量压缩下载成zip包

    2024-04-22 22:15:17
  • 八条常见的CSS错误及修复方法

    2010-04-08 16:54:00
  • MySQL数据库导入导出数据之报错解答实例讲解

    2024-01-24 14:56:49
  • MySQL 5.5.x my.cnf参数配置优化详解

    2024-01-27 02:12:48
  • python区块链地址的简版实现

    2021-04-02 14:04:21
  • django 实现简单的插入视频

    2023-12-24 09:59:33
  • sql语句优化之SQL Server(详细整理)

    2024-01-15 14:07:08
  • focus 进 textarea 元素后光标位置的修复

    2008-09-27 13:27:00
  • Asp用分页符实现长文章分页

    2007-10-19 18:35:00
  • Numpy创建NumPy矩阵的简单实现

    2022-08-22 15:08:25
  • pandas 使用apply同时处理两列数据的方法

    2021-09-27 07:35:30
  • asp之家 网络编程 m.aspxhome.com