如果MySQL查询错误或未更正MySQL查询,则程序是否编译成功,程序中没有任何其他错误,如数据库连接。
所有会导致编译失败的编译时错误都记录在JLS中。只要SQL查询是一个格式良好的字符串,并且具有适合于Java源代码的有效转义序列,它就可以编译。
例如:
String mySQLStatement = "SELCT ** FROM `nonExistentTable` WHERE";
尽管它在语法上是荒谬的错误。
但是,如果您使用的类与返回/参数类型不一致,那么使用这些类以编程方式构建SQL语句的语法错误可能会导致编译错误。
当sql查询出现错误时,不会抛出编译时错误,原因是查询在编译时被视为字符串,但在执行时会抛出sql Exception错误。
在编译时会检查所有java代码的语法,但在执行时会检查SQL的语法。
因此,如果SQL查询有问题,它将在运行时抛出错误。