1
2
一般来说,Oracle提供了任何错误的行号和列号,但是否调用以及如何调用这些API取决于您使用的特定API(除非您碰巧正在编写一个OCI应用程序,这可能不太可能)。由于答案很可能最终是特定于API的,那么您使用的是什么API?当错误发生时,您的代码是什么样子的(例如JDBC、ODBC、oledb等等)? 如果SQL/PL中有一个拼写错误的行,则会在SQL/block中加上一个错误代码。另一方面,许多api在默认情况下只会报告PLS-00201错误。
类似地,如果执行一个变量名无效的SQL语句,SQL*Plus将获得列和行的位置,并在有问题的字符下加一个*,即。
大多数PL/sqlide(TOAD、sqldeveloper等)都会通过询问合适的ociapi来完成类似的工作。然而,具体如何实现这一点,将取决于API。 |
2
1
不过,除了盯着它看,还有其他的事情你可以试试。例如,一次将SQL语句中的每个变量转换为文本变量,直到错误消失为止。如果可能,生成变量名列表,而不是手动键入它们。 |
jchristo · 释放时服务炸弹爆炸[重复] 6 年前 |
Rod · 检查DataTable是否存在列以及是否为null 6 年前 |
user1451111 · 如何在ADO代码中存储大型查询。NET项目 6 年前 |