0

我是 MySql 的新手 ^_^ ,

我正在使用一个名为 GLPI 的现有开源,他们使用的是 MVC 方法,所以我发现编辑主代码非常困难,这就是为什么我决定发布这个问题,如果我可以从 MySql 更改选择语句。

所以我需要知道如果有任何操作包含(

SELECT * FROM `glpi_tickettemplates` WHERE `id` = '-2' 

)

然后用 (

SELECT * FROM `glpi_tickettemplates`  WHERE `id` = '1' 

)

提前致谢

4

1 回答 1

1

根据您的问题,您似乎只需要一个特定行,所以为什么不将 id='-2' 的行复制到 id='1' 的行中然后

DELIMITER $$
CREATE TRIGGER myTrigger AFTER UPDATE ON `glpi_tickettemplates`
CREATE TEMPORARY TABLE `tempTable` 
AS 
SELECT * FROM `glpi_tickettemplates` WHERE id='-2'; 
UPDATE `tempTable` SET id='1' WHERE id='-2';
REPLACE INTO `glpi_tickettemplates` SELECT * FROM `tempTable`;
DROP TEMPORARY TABLE `tempTable`; 
DELIMITER;

更新:

如果你想在所有传入的查询中替换 every id='-2'id='-1'请查看MySQL Proxy

MySQL Proxy 是一个简单的程序,位于您的客户端和 MySQL 服务器之间,可以监控、分析或转换它们的通信。

它的灵活性允许无限使用;常见的包括:

  • 负载均衡
  • 故障转移
  • 查询分析
  • 查询过滤和修改

还有很多。

http://forge.mysql.com/wiki/MySQL_Proxy,您可以找到安装、使用和运行 MySQL Proxy 的所有链接。

于 2013-02-09T20:17:42.660 回答