--删除
drop procedure if exists up_common_select
--创建
CREATE PROCEDURE `up_common_select`
(
in t_name varchar(50)
)
begin
declare v_sql varchar(500);
set v_sql= concat('select * from ',t_name);
select v_sql;
--注意:prepare(预处理)execute stmt using @var,只能跟@var变量,declare和传入的变量不行!!!
set @v_sql=v_sql;
prepare stmt from @v_sql;
EXECUTE stmt ;
deallocate prepare stmt;
end;
--调用
call up_common_select('admin_authority');
注意事项
1 mysql5.0.13之后支持在存储过程中调用prepare
2 prepare stmt from 'select * from ?'; (错)
mysql5.0.24,prepare尚不支持 表名做变量!
解决方案:用 contat()函数,组合字符串
3 execute stmt [using @var,@var2]
必须是@var形式的变量,传入的参数变量,declare变量不行
4. deallocate prepare stmt; 显式的释放prepare,如果不释放,mysql会释放,!
分享到:
相关推荐
本实例展示了如何在MySQL存储过程中实现异常处理,以捕获并处理可能出现的错误。 首先,我们注意到在创建存储过程`myProc`时,使用了`delimiter $$`来改变MySQL客户端的语句分隔符,这是为了在存储过程中使用多个...
MySQL存储过程是数据库管理系统中的一种重要功能,它允许开发者预编译一系列SQL语句并封装成一个可重复使用的单元,从而提高数据处理的效率和代码的复用性。本教程将深入探讨MySQL存储过程的创建、调用以及相关概念...
本教程结合"mysql经典教程+mysql存储过程讲解"的主题,将深入探讨MySQL的基础知识以及核心特性——存储过程。 首先,我们需要理解什么是数据库。数据库是一个组织和存储数据的系统,允许用户以结构化方式访问和管理...
MySQL 存储过程编程 MySQL 存储过程编程是指在 MySQL 数据库中使用存储过程来实现业务逻辑的编程技术。存储过程是一种可以在数据库中存储和执行的程序单元,它可以实现复杂的业务逻辑和数据处理操作。 在 MySQL ...
总的来说,Java通过JDBC调用MySQL存储过程涉及到连接数据库、创建`CallableStatement`、执行存储过程和处理结果。这使得开发者能够在Java应用中灵活地利用数据库提供的强大功能,实现更高效的数据处理。
本文将深入探讨如何利用MySQL存储过程动态创建多列,这是一个高级功能,尤其适用于需要根据运行时变量或条件动态修改表结构的情况。 ### MySQL存储过程动态创建多列 #### 基本概念 在MySQL中,动态地添加列到一个...
MySQL存储过程是数据库管理系统中的一种重要功能,它允许开发者预编译一系列的SQL语句,形成一个可重复使用的代码块,以提高数据处理的效率和应用程序的性能。在这个"MySQL存储过程学习"的主题中,我们将深入探讨...
MySQL存储过程是数据库管理系统中的一个重要特性,它允许程序员或数据库管理员预先定义一组SQL语句,形成一个可重用的逻辑单元。在这个“MySQL存储过程入门到精通”资料中,你将深入理解存储过程的原理、创建、调用...
MySQL存储过程 MySQL存储过程(Stored Procedure)是一种复杂的数据库对象,允许用户将多个SQL语句组合成一个单一的执行单元,以提高数据库的性能和可维护性。下面是 MySQL 存储过程的相关知识点: 存储过程的定义...
在Java应用中,调用数据库存储过程时,往往需要处理复杂的参数传递,特别是当参数为集合类型时,这一过程变得更加具有挑战性。本文将深入探讨如何在Java中有效地调用存储过程,并向其传递集合参数,主要聚焦于Oracle...
在Java编程中,调用MySQL存储过程是一种常见的数据库交互方式,尤其在处理复杂业务逻辑或大量数据操作时。本文将详细讲解如何通过Java来执行MySQL的存储过程。 首先,了解存储过程的基本概念。存储过程是预编译在...
MySQL存储过程是数据库管理系统中的一种重要功能,它允许程序员或数据库管理员预编译一系列SQL语句,形成一个可重用的程序单元。在本场景中,我们关注的是如何利用存储过程进行数据库的备份与还原,这在数据管理中至...
### MySQL存储过程实战知识点 #### 一、存储过程概述 MySQL 存储过程是一种预编译的 SQL 脚本,它可以包含复杂的逻辑控制结构、循环等操作,并且可以接受参数,执行完后还可以返回结果。存储过程可以提高数据处理...
在实际应用中,MySQL存储过程广泛用于实现数据库的事务处理、数据备份和恢复、业务规则的封装等场景。例如,可以创建一个存储过程来批量插入数据,或者在一组操作失败时自动回滚事务,保证数据一致性。 在提供的...
MySQL存储过程是数据库中用于执行复杂操作的一组预编译的SQL语句,它们可以接收输入参数、输出结果以及在内部处理数据。在本示例中,我们将探讨如何通过存储过程返回多个值,并且结合PHP进行调用。 首先,我们要...
- **参数类型:**MySQL存储过程支持`IN`(输入)、`OUT`(输出)、`INOUT`(输入输出)三种参数类型,允许灵活地传递与返回数据。 **参数详解:** - `IN`:输入参数,用于接收外部传入的数据,其值在存储过程中不...
在"MySQL存储过程.doc.doc"文档中,可能会详细讲解这些概念,并通过实例来展示如何创建、调用和管理存储过程,包括如何处理各种异常情况,以及如何利用存储过程提高数据库应用的效率和安全性。深入理解并熟练运用...
### MySQL存储过程详解 #### 一、MySQL存储过程概述 MySQL 存储过程是一种服务器端的编程技术,它允许开发者创建可重复使用的代码模块。这些模块可以包含一系列复杂的 SQL 语句和其他流程控制语句。MySQL 5.0 版本...