- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这些就是我遇到的:
不能用ALTER PROCEDURE更改存储过程的主体应该使用DROP procedure和CREATE procedure。
PREPARE不接受局部变量。这行不通:DECLARE sql VARCHAR(32) DEFAULT 'SELECT 1';
PREPARE stmt FROM sql;
FETCH[光标名称]进入。。不接受全局变量。这行不通:FETCH mycursor INTO @a;
还有什么例子吗?
最佳答案
首先,很抱歉在这个帖子里有这么多无耻的插件。我之所以这么做是因为我一直在努力解决这些问题,而详细地解释每一个问题将花费太多时间。好的方面是,我链接到的所有文章都应该通过查看第一段左右的内容,让您清楚地知道它们是否值得阅读。
将[光标名称]提取到。。不接受全局变量。
不是真的。局部变量的作用很好。
准备
至于PREPARE
,与您所提到的相同,为占位符指定参数值也需要使用用户定义的变量,而不是局部变量:
PREPARE stmt FROM 'INSERT INTO tab VALUES (?,?)';
EXECUTE stmt USING @val1, @val2;
DEALLOCATE PREPARE stmt;
PREPARE
的另一个限制是不能在存储的函数或触发器中使用它
FOR EACH ROW
触发器。这意味着您只能对行级别的INSERT、UPDATE或DELETE事件执行操作。有一个技巧可以用来模拟
BEFORE STATEMENT
触发器,请参见:
http://rpbouman.blogspot.com/2006/04/mysql-hack-emulates-before-statement_30.html。不过,这并不是真正有用的——更有用的是一个
AFTER STATEMENT
触发器,但我还没有找到任何方法来触发这个触发器。
BEFORE INSERT FOR EACH ROW
触发器。
DELIMITER $$
CREATE PROCEDURE p(p_name)
BEGIN
INSERT INTO tab VALUES (p_name); -- these statements are terminated with semi-colon
SELECT last_insert_id();
END; -- after this we do the custom delimiter to create the procedure
$$
-- now let's reset the delimiter again:
DELIMITER ;
CALL p('Boe'); -- we can use the semi-colon again now.
SIGNAL
语句来解决这个问题。见
http://rpbouman.blogspot.com/2009/12/validating-mysql-data-entry-with_15.html。要解决MySQL v<5.5中缺少的特性,请看这里:
http://rpbouman.blogspot.com/2005/11/using-udf-to-raise-errors-from-inside.html。也有其他方法,但它们都依赖于引发一些其他已知但不是用户定义的错误。
mysql> SELECT BENCHMARK(10000000, 1+1);
+--------------------------+
| benchmark(10000000, 1+1) |
+--------------------------+
| 0 |
+--------------------------+
1 row in set (0.30 sec)
mysql> CREATE FUNCTION f_one_plus_one() RETURNS INT RETURN 1+1;
mysql> SELECT BENCHMARK(10000000, f_one_plus_one());
+---------------------------------------+
| benchmark(10000000, f_one_plus_one()) |
+---------------------------------------+
| 0 |
+---------------------------------------+
1 row in set (28.73 sec)
关于mysql - MySQL存储例程-常见陷阱?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2257655/
新建表: create table [表名] ( [自动编号字段] int IDENTITY (1,1)&nbs
我的文件中有正在本地化的字符串。其中许多是常见的,并且已经在整个 iOS 中使用。例如。 “保存”、“加载”、“返回”、“收藏夹”、“拍照”。为了与其他应用程序和内置应用程序提供一致的用户体验,是否有
我已经学习了 Qt 的基础知识,现在对这个漂亮的库的深度感兴趣。请帮助我理解: 所有类都是从QObject派生的吗? 为什么可以在QWidget(和派生类)上绘画? return app.exec()
我在 webpack 中设置了一个自调用函数,并使用常见的 JS 来需要一些包: (function() { var $ = require("jquery"); //...my functi
我正在尝试制作一个大量使用词性标记的应用程序。但是 nltk 的 pos 标记功能对我来说似乎不符合标准 - 例如: import nltk text = "Obama delivers his fi
有没有办法处理发送到 MySQL 的常见查询以防止不必要的带宽使用? 最佳答案 选项是: 使用MySQL缓存查询 好:全自动 差:仍然需要访问数据库服务器;有一次缓存让我在一个项目中失望,花了很长时间
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 4 年前。 Improve this qu
关闭。这个问题需要debugging details .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 6年前关闭。 Improve this questio
我正在尝试调用返回 csv 文件的网络服务。因此,我调用的每个 URL 都有一个后缀,它是一个字符串,表示要生成哪个 csv。然后我想将此 csv 保存到文件中。有很多要生成,所以我从多个线程调用此类
流行手机型号支持的典型触摸点数量是多少?我在基础研究中看到低至 2 和高至 5,但我希望能够将其映射到实际手机和更好的限制! 最佳答案 两部手机的触控点数据: Galaxy S 5 LG
出于好奇 - 我知道有 LAMP - Linux、Apache、MySQL 和 PHP。但是还有哪些其他 Web 堆栈替代方案的缩写呢?像 LAMR - Linux、Apache、MySQL Ruby
我写了一个java代码(使用apache common vfs2)来上传文件到SFTP服务器。最近,我在我的服务器上引入了 PGP 安全性。现在,java 代码无法连接到该服务器。与 FileZill
由于 GLU 被认为对于现代 OpenGL (3.1+) 来说已经过时,那么使用 C/C++ 在 OpenGL 中绘制基本形状(例如椭圆或弧线/饼图)的方法是什么?令人难以置信的是,在 OpenGL
我想知道是否有最流行的 iOS 应用程序的自定义 URL 方案列表,例如 Keynote、Numbers、Pages、Evernote 等。我还想知道这些应用程序使用什么参数网址。 我需要这个的原因是
我正在使用 NDK r10d 移植 C++ myToll Linux 应用程序以在 Android 上运行。 (请注意,这不是带有 apk 的 Android 应用程序,而是从 shell 运行的实用
假设您想要使用 UML 2 部署图为在该领域没有太多知识的人可视化一个常见的 PHP 服务器应用程序。这样一个通用的应用程序可能有三个设备节点(数据库服务器、Web 服务器和客户端)和四个执行环境节点
我正在尝试运行以下代码,以找到两个人之间的共同 friend 。输入如下 A : B C D B : A C D E C : A B D E D : A B C E E : B C D 我无法在输出文
我在 Gitolite 的 manual 中找到的唯一东西在钩子(Hook)上,是: If you want to add your own hook, it's easy as long as it
具体来说,我有一个问题,在 AWS 环境中组织 AZ 故障转移的推荐方法是什么。此外,最好了解典型的 AWS 故障以组织应用程序 HA(高可用性)。 因此,应用程序架构(AWS 服务使用)如下: 它或
我正在尝试编写一个通用的 SecurePagingAndSorting 存储库,它将检查 CRUD 操作的安全性,以节省在所有 JPA 存储库中重复相同的 PreAuthorize(使用不同的权限)。
我是一名优秀的程序员,十分优秀!