`

MYSQL 存储过程中,使用变量名代替表名

阅读更多

在MySQL中使用变量名代替表面需要使用 prepare.(注: prepare是在 mysql 5.0以后版本才支持的. )

 

CREATE DEFINER=`offsee`@`%` PROCEDURE `pro_terminal_report`()
BEGIN   
       
        declare _version int ;
        set _version = 'terminal_log' ;
     
        set @exec_sql = concat('select * from ' , _version);
        prepare _stmt from @exec_sql ;
        execute _stmt;
        deallocate prepare _stmt;
    
END$$

DELIMITER ;

 

重点要说明的是: set @exec_sql = concat('select * from terminal_log_v' , _version);

这里的@exec_sql变量名一定是:@+变量名   , 

之前我是写成: _exec_sql总是报1064错误.

 

分享到:
评论

相关推荐

    MySQL Select from 查询数据.docx

    在执行 Select 语句时,我们使用了 mysql_query() 函数来执行查询语句,并将查询结果存储在 $result 变量中。 在获取查询结果后,我们可以使用 mysql_fetch_array() 函数来逐行取得查询结果。在 PHP 中,我们可以...

    集团企业所用的数据库设计规范

    - 名称长度限制:库名、表名、字段名不超过30个字符,且不得使用MySQL保留字。 - 数据对象和变量一律使用英文命名,禁止中文。 2. **基础规范**: - 推荐使用MySQL 5.6版本的INNODB存储引擎,以确保事务支持和...

    建表规范丶SQL规范丶索引规范-word文档

    - **缓存利用**:为了充分利用缓存,不允许使用自定义函数、存储函数、用户变量等。 - **列选择**:在查询中指定所需的列,而不是直接使用“*”返回所有列。 - **属性隐式转换**:不允许使用属性隐式转换。 ...

    2021-2022计算机二级等级考试试题及答案No.15915.docx

    18. 调用MySQL存储过程和函数:使用CALL语句调用存储过程,SELECT语句调用函数。 19. 数据库表属性:数据库表可以设置长表名、长字段名,匹配字段类型,验证规则,主索引和候选索引,但不能直接用use命令打开,需在...

    数据库设计和开发规范

    6. **存储过程替代简单查询**:鼓励使用存储过程来替代简单的SQL查询,以增强代码的复用性和安全性。 #### 三、基本规范 1. **Pascal/Camel样式命名**:建议采用Pascal或Camel样式命名数据库对象,这有助于保持...

    针对ASP程序的SQL注入攻击概述及防范方法研究.pdf

    - 使用存储过程:存储过程可以作为数据库访问的封装层,通过限制对数据库的直接访问来减少SQL注入的风险。 - 错误处理:在应用程序中实施恰当的错误处理机制,避免向用户显示详细的数据库错误信息,以减少泄露信息...

    MYSQL 数据库命名与设计规范

    - **命名规则**:只使用26个英文大小写字母、0-9数字和下划线,且长度不超过30个字符(变量名不超过29个字符,不计@符号)。禁止使用中文和保留字,避免空格,并注意与系统保留词的冲突。 - **一致性**:字段名和...

    php入门之连接mysql数据库的一个类

    `connect()`方法中使用`mysql_connect()`函数尝试连接到MySQL服务器,如果失败,则通过`die()`函数显示错误信息。接着,`mysql_select_db()`函数选择指定的数据库,`mysql_query()`设置字符集为UTF-8。 此外,类`...

    58数据库设计军规

    - **解读**:InnoDB作为MySQL中最常用的存储引擎之一,提供了事务安全性和行级锁定机制,这有助于提升在高并发场景下的性能表现。此外,InnoDB还针对CPU和内存进行了优化,通过缓存页机制提高了资源利用率,从而更好...

    php实现通用的从数据库表读取数据到数组的函数实例

    此外,示例代码中的`$table`、`$name`、`$field`、`$where`和`$textID`五个参数分别对应查询中使用的表名、下拉列表的名称、字段名、查询条件和下拉列表的id属性,使得函数具有很高的通用性。 需要注意的是,示例...

    2021-2022计算机二级等级考试试题及答案No.16978.docx

    - **解析**:在SQL中,使用SELECT * FROM 表名 WHERE 条件来查询满足特定条件的所有记录。因此,正确答案为C。 #### 16. HTML中的文本输入域 - **知识点**:HTML(HyperText Markup Language)用于定义网页的结构。...

    php简单留言板开发与分析

    表名为`board`,包含4个字段:`id`(作为主键,自动递增)、`user`(存储用户名)、`message`(存储留言内容)和`date`(存储留言时间)。每个字段都有特定的数据类型,例如`id`为整型,`user`和`date`为字符串,`...

    阿里巴巴 Java 开发手册1.3.1(纪念版)

    - **强制规定**:方法名、参数名、成员变量、局部变量统一使用lowerCamelCase风格。 - 正例:localValue/getHttpMessage()/inputUserId - **强制规定**:常量命名全部大写,单词间用下划线隔开,力求语义完整清晰...

    2021-2022计算机二级等级考试试题及答案No.15691.docx

    - **更新语句**:`UPDATE 表名 SET 字段名 = 新值 WHERE 条件;` - **示例**:`UPDATE 商品 SET 类型 = '纺织品' WHERE 类型 = '纺织';` ### 20. Visual FoxPro程序设计结构 **知识点**: - **基本结构**:顺序结构...

Global site tag (gtag.js) - Google Analytics