2010-07-26 84 views
2

这个问题我是通过代理(它是为别人)提出的。更改MySQL结束语句

他正在制作程序并存在以下问题:他需要输入未转义的“;”在一个查询中,他听说他可以要求MySQL以“;”之外的其他东西来终止。

因此,在伪代码将是:

Change_Statement_Ending(;;); SELECT * FROM * WHERE ;;//假设这是一个输入查询,它是多年来,我不使用SQL,我不记得... ... Change_Statement_Ending(;);;

的问题是,他不记得就行了正确的语法,我写为“Change_Statement_Ending(结束)”

+0

参见:http://stackoverflow.com/questions/2109366/changing-the-mysql-query-delimiter-through-the-c-api – 2010-07-26 00:21:13

回答

3

您可以使用DELIMITER。 E.g将分隔符更改为//而不是默认的;,问题DELIMITER //

0

我有一个类似的问题,但有人告诉我这不是一件好事。然后我发现我写了一个错误的查询,并重写了它。所以,也许你应该先看看查询?

我会检查我的解决方案并编辑答案。

我有这个查询:http://pastebin.com/LZkFF6wR 而因为它&里面它不会运行,除非分隔符被更改。
所以,然后我用htmlspecialchars() - htmlspecialchars() - 为我的查询(因为它是PHP产生的,不知道你的),它解决了该问题。