在 MySQL 存储过程中将表作为参数发送时出现错误

2024-01-16

我写了一个存储过程。它执行正常,但是当我调用该过程时,它显示错误:

错误代码:1327 未声明的变量: 第三

请看我下面的流程:

DELIMITER $$
USE `db_test`$$
DROP PROCEDURE IF EXISTS `test_proc`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `test_proc`(IN newsInfoTable VARCHAR(100))
BEGIN     
    SET @sql_stam = CONCAT('SELECT news INTO ', @news,' FROM ',newsInfoTable,' WHERE ',CURDATE(),'=?;');      
    PREPARE s1 FROM @sql_stam;     
    SET @where_param = DATE_FORMAT(date_time,'%Y-%m-%d');     
    EXECUTE s1 USING @where_param;    
    SELECT @news;          
 END$$
DELIMITER ;

调用参数:

USE db_test;
CALL test_proc('tbl_morning_news');

将您的代码更改为:

DELIMITER $$
USE `db_test`$$
DROP PROCEDURE IF EXISTS `test_proc`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `test_proc`(IN newsInfoTable VARCHAR(100))
BEGIN     
    SET @sql_stam = CONCAT( 'SELECT news INTO @news FROM ',newsInfoTable
                           ,' WHERE DATE(`date_time`) = CURDATE()' );      
    PREPARE s1 FROM @sql_stam;         
    SELECT @news;          
 END$$
DELIMITER ;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 MySQL 存储过程中将表作为参数发送时出现错误 的相关文章

  • 在mysql中的单个查询中更新多个表

    我有三个查询 我想要一个 这是我的查询 UPDATE tab1 SET a WHERE id 3 UPDATE tab2 SET b WHERE id 9 UPDATE tab3 SET c WHERE id 5 您可以尝试下面的代码 UP
  • 从按日期时间排序的 MySQL 表中获取用户的最后一个条目

    我有一张看起来像这样的桌子 USERNAME DATA DATETIME Jhon text1 2010 06 01 16 29 43 Mike text2 2010 06 01 16 29 22 Silver text3 2010 05
  • MySql - 复制监控工具[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个主 从 MySql 复制 我正在寻找一个允许我监视复制的工具 查看它没有错误 检查滞后等 我更喜
  • 仅当值发生更改时如何插入数据库?

    我需要更新 替换 MySQL 数据库中的字段 但前提是它们已更改 该表包含 ID 文本字段和更改日期 用户根据更改日期通过 ID 查询数据 即 如果该日期早于用户上次查询数据的时间 则他不想要它 仅当文本字段与具有相同 ID 的现有文本字段
  • 在 C# 中,当有人插入、删除或修改记录时,如何从 MySQL 获取事件?

    我正在 WPF Net 中开发一个程序 我需要知道何时有人对数据库的任何表进行更改 这个想法是在数据库发生更改时从数据库接收一个事件 我读了很多文章 但找不到解决我的问题的方法 亲切的问候 最好的解决方案是使用消息队列 在您的应用程序向数据
  • 如何在mysql中选择具有相同值集的列?

    我的桌子是 patients pid name city disease did dname has disease did pid 我想列出具有相同疾病组的患者 pid 和 did 分别是患者和疾病表中的主键 并且是 has diseas
  • 不允许在 php 中连接到此 MariaDB 服务器

    我尝试在 php 中连接远程服务器数据库 但出现以下错误 Host xx xxx xx xx is not allowed to connect to this MariaDB server in 我的连接代码是这样的 servername
  • 连接 Netbeans 和 MySQL 但出现大整数错误

    所以我正在尝试向我的 Netbeans 数据库 即 MySQL 添加新连接 但我遇到了大整数转换错误 有人可以帮助我吗 详细地 我右键单击现有的MySQL 服务器位于 localhost 3306 root 已断开连接 gt gt 选择co
  • MySQL 和 Hibernate 之间的主键自增由谁负责?

    MySQL CREATE TABLE role id role INT 11 unsigned NOT NULL AUTO INCREMENT PRIMARY KEY id role AUTO INCREMENT 1 休眠 Entity p
  • covertJSONtoSQL 在 NiFi 中返回空值

    我正在设计一项工作 使用以下命令将数据从 MySQL 中的数据库转移到另一个数据库 MySQL 执行SQL处理器随后将Avro转换为Json then 将Json转换为SQL then PutSQL如下流程图所示 将JSON转换为SQL返回
  • MySQL 通过 current_timestamp 选择上个月的数据

    直到今天 当我使用 MySQL 并需要对日期 时间执行操作时 我使用带有 unix 时间戳的 int 列 没有出现任何问题 但今天在阅读了一些指南后 我决定默认使用 current timestamp 测试时间戳列 所以我感兴趣如何按列选择
  • 在 MySQL 中对整数字段运行带引号的数字(字符串)查询时会发生哪些复杂情况

    在 SQL 中 不应引用整数 因为如果引用 它将是一个字符串 但我很好奇如果我这样做会出现什么问题 并发症 例如 SELECT FROM table WHERE id 1 正确的 vs SELECT FROM table WHERE id
  • 删除 IF ELSE 语句中的临时表

    我在这里面临僵局 问题是我必须更改使用 3 个不同临时表的过程 为了便于对话 让我们将它们命名为 temptable1 temptable2 temptable3 我无法在这里复制 粘贴整个过程 但总体思路是这样的 原始过程 procedu
  • 每月获取记录,但如果该月没有记录,则为零

    如果我有以下 SQL 表 Tests id type receiveDate 1 Blood 2012 01 18 2 Blood 2012 01 20 3 Blood 2012 01 18 4 Blood 2012 03 01 5 Blo
  • 如果 Row1 = 值 1,则更新其他行

    我有一个小的 php 脚本 用于访问 mySql 数据库 我想在数据库中插入新记录之前查看该数字 值 1 是否等于数据库中的记录 这也在第 1 行 所以我想 查看传入的电话号码是否等于数据库中的电话号码 如果是这样 则必须保持电话号码相同的
  • 数据库字段中的逗号分隔值

    我有一个产品表 该表中的每一行对应一个产品 并由唯一的 ID 标识 现在 每个产品都可以有多个与该产品关联的 代码 例如 Id Code 0001 IN ON ME OH 0002 ON VI AC ZO 0003 QA PS OO ME
  • 学说迁移后备

    我们正在使用原则迁移 当迁移包含多个操作并且其中一个操作失败时 通常会出现问题 例如 如果迁移添加了 5 个外键 其中第 5 个失败 而字段长度不同 则修复字段错误并重新生成迁移不会not修复整个问题 而现在出现一个与 4 个密钥已存在有关
  • Mysql插入表后不显示右单引号(’)

    我有一个名为 测试 的表 我插入了一行 其中包含unicode字符右单引号 0x2019在名称字段中 SQL insert into Testing values Sno Name Address insert into Testing v
  • MySQL 转储未知选项“-no-beep”

    在旧服务器上我使用了mysql转储命令来备份 MySQL 数据库 在新服务器上 MySQL 版本为 5 6 相同的命令给出了错误 unknown option no beep 无论它插入什么 我也在互联网上搜索过 但找不到任何帮助 在 my
  • post php mysql 的拆分关键字

    我有一个表存储帖子 ID 它的标签如下 Post id Tags 1 keyword1 keyword2 keyword3 我想循环遍历该表中的每一行并执行以下操作 将关键字1 关键字2 关键字3放入新表中 word id word val

随机推荐

  • 从终端检测脚本中的键盘输入的最简单方法是什么?

    我有一个简单的 python 脚本 它有一些循环运行的函数 我正在读取传感器读数 while True print Doing a function 如果按下键盘 我想打印 按键已按下 在 Python 中执行此操作的最简单方法是什么 我已
  • jquery ajax 调用可以在本地主机上运行,​​但不能在实时服务器上运行

    我已经研究了这个问题一整天 这似乎是一个有点常见的问题 但我一直无法找到解决方案 我正在使用 jquery 的 ajax 函数进行服务调用以更新数据库中的某些值 它在本地主机上运行良好 但在实际服务器上 我在控制台窗口中收到 500 内部服
  • JQuery 将类添加到克隆元素

    这是我的脚本 addprop click function clone clone insertAfter addprop 我需要向正在创建的新元素添加一个类 是否可以 是的 addprop click function clone clo
  • sql选择多行的最早日期

    我有一个如下所示的数据库 circuit uid customer name location reading date reading time amps volts kw kwh kva pf key cu1 cb1 r1 Custom
  • heroku 还有其他搜索选项吗

    我即将推出一个测试版网站 并且heroku看起来是一个不错的选择 唯一让我失望的是 Websolr 附加组件的唯一搜索选项是 20 美元 月 我确信 Websolr 很棒 但在这个项目的早期阶段 我宁愿不花这笔费用 有没有免费的搜索选项可以
  • 使用 OpenSSL 解密字符串在终端中有效,但在 PHP 脚本中无效

    我正在尝试解密一个文件 我可以使用以下字符串在终端中使用 OpenSSL 对其进行解密 openssl enc d aes 192 ecb in file crypt out file K 0123456789abcdef iv 0 但是
  • 如何将 PHP glob 指向特定目录?

    所以我得到了这段代码来列出目录中的所有 jpg 图像 但它只适用于我的根目录 我不知道如何将它指向我的图像目录 ul li a href gt img src gt a li ul 有人能帮我吗 这应该有效 glob images N T
  • 撰写中两个活动之间的共享元素转换?

    目前是否有任何东西可以允许在 Jetpack Compose 中使用共享元素动画在结果列表和详细信息屏幕之间制作经典过渡动画 就像是 我知道一些实验库允许这样做 但它们都适用于单一活动 我想知道更传统的方法有两个活动 The 官方 Jetp
  • angularJS:页面刷新时更改图像。否则(如果不刷新)想在5秒内自动更改

    这里创建了一个页面形象改变而页面刷新 从这个问题在 angularJS 中刷新页面时更改图像 https stackoverflow com questions 42948044 change image when page refresh
  • 在java中将关联、聚合和组合转换为代码?

    我知道java中关联 聚合和组合的转换有不同的表示方式 但是当我们将它们转换为代码 java类 时 它们都以相同的方式表示 就像老师教的学生一样 关联将用具有班级老师实例变量的学生类来表示 部门有教授 聚合也将用具有班级教授实例变量 数组
  • 如何在 PHP 中解析 JSON 对象?

    我有一个 JSON 对象 正在发送到 PHP 脚本 但在解析 JSON 时遇到问题 这是 POST 请求 http mywebsite com action somefunction 22id 22 1 22Name 22 22Mike 2
  • Firebase如何为树深处的2级随机ID的子级编写安全规则

    我有一个名为 people 的数据库节点 如下所示 people UserID1 which is a random id UserId2 which is a random id name some name id UserId2 ima
  • 指令中0x0表示什么

    什么是0x0在以下指令中注明 lea 0x0 esi eiz 1 esi 整个语句是一个很棒的 noop 它看起来是一个 7 字节的 noop http www technovelty org code arch noop html htt
  • Python:编译成 Unix 命令行应用程序

    我不确定我是否搜索了错误的术语 但我在这个主题上找不到太多内容 我在 osx 上 我想将命令行 python 脚本编译成一个小型命令行应用程序 我可以将其放入 usr local bin 中 这样我就可以从任何地方调用它 有没有一种直接的方
  • Celery 任务中每个查询的 Python cassandra-driver OperationTimeOut

    我对在 celery 任务中异步执行的每个插入查询 小查询 都有问题 在同步模式下 当我插入时 一切都完成得很好 但是当它在 apply async 中执行时 我得到这个 OperationTimedOut errors errors er
  • 使用 Flexbox 实现等高列

    我正在尝试构建一个具有两个独立内容组的布局 一个位于左侧和右侧 目前具有固定宽度 20 80 在每一侧 我都尝试使用 flexbox left panel 来排列内容flex direction column和右侧面板flex direct
  • 从类中调用方法

    我有 2 个表格 Form1 和 Form2 和一个班级 Class1 Form1 包含一个按钮 Button1 Form2 包含一个 RichTextBox textBox1 当我在 Form1 上按 Button1 时 我希望调用方法
  • 从 pandas DataFrame 计算 p 值

    我有一个 DataFrame 统计数据 其中包含 Multiindex 和 8 个样本 此处仅显示两个 每个样本有 8 个基因 In 13 stats Out 13 ARG 16S count mean std min sample gen
  • 视图函数未返回有效响应[重复]

    这个问题在这里已经有答案了 我正在尝试严格遵循 Miguel 的出色教程 https blog miguelgrinberg com post the flask mega tutorial part v user logins https
  • 在 MySQL 存储过程中将表作为参数发送时出现错误

    我写了一个存储过程 它执行正常 但是当我调用该过程时 它显示错误 错误代码 1327 未声明的变量 第三 请看我下面的流程 DELIMITER USE db test DROP PROCEDURE IF EXISTS test proc C