2017-05-25 84 views
0

我知道T-SQL支持PARSEONLY标志,它检查有效的脚本并相应地返回一条消息。MySQL中是否存在T-SQL PARSEONLY标志等价物?

寻找一种方法将命令文本发送到服务器进行分析。一个可行的选择是C#MySQL解析器,但前者是首选。我宁愿在尝试执行之前进行验证。

+1

准备声明会在出现问题时给出错误。这不需要执行,只是准备好了。 –

+0

@NigelRen我看到Command.Prepare()的C#方法。研究这是如何工作的。目前看来可行。 – CaptainMarvel

+0

@NigelRen我不得不在连接字符串中添加一个'IgnorePrepare = false',但是如果语句无法准备,它会引发错误。这符合我的需求,所以继续并提交作为答案,我会接受。这似乎比@ Vix更好 - 答案执行计划没有带入它。 – CaptainMarvel

回答

1

如果出现问题,简单地准备声明会给你一个错误。这不需要执行,只是准备好了。

1

EXPLAIN声明是否有效?有一个限制:

EXPLAIN可以使用SELECT,DELETE,INSERT,REPLACE和UPDATE语句。

所以它不是普遍的,但也许这就够了?

+0

谢谢!现在测试一下。看起来它可能会工作,如果它只是在成功时创建一个执行计划,并且如果解析失败则返回错误消息。 – CaptainMarvel

相关问题