from子句中的java sql异常语法错误
我有一个access数据库,并试图在java中使用它。我想选择它,并写了一个声明作为from子句中的java sql异常语法错误,java,sql,ms-access,jdbc-odbc,Java,Sql,Ms Access,Jdbc Odbc,我有一个access数据库,并试图在java中使用它。我想选择它,并写了一个声明作为 String sql="SELECT * from numeric;"; try { rs=s.executeQuery(sql); while(rs.next()) { System.out.println(rs.getString(1)); } } executeQuery正在抛出一个异常作为
String sql="SELECT * from numeric;";
try
{
rs=s.executeQuery(sql);
while(rs.next())
{
System.out.println(rs.getString(1));
}
}
executeQuery正在抛出一个异常作为
java.sql.SQLException:[Microsoft][ODBC Microsoft Access驱动程序]中的语法错误
从句
我认为我写的select语句是正确的。即使我写的是
从数字中选择Webservice
还提供了一个错误,其中Webservice是我的列名。您必须删除尾随的
代码>在您的语句末尾
通常用分隔语句代码>,但由于JDBC规范不允许在单个语句字符串中执行多个语句,因此不能使用分号。必须删除尾随的代码>在您的语句末尾
通常用分隔语句代码>,但由于JDBC规范不允许在单个语句字符串中执行多个语句,因此不能使用分号。在Access数据库中,索引从一开始,而不是从零开始。首先确定webservice
的索引,它可能是两个,请尝试以下语句
System.out.println(rs.getString(2));
在Access数据库中,索引从1开始,而不是从零开始。首先确定webservice
的索引,它可能是两个,请尝试以下语句
System.out.println(rs.getString(2));
您的表名为numeric
,它也是一种SQL数据类型。SQL解析器认为它是一种数据类型,因此查询失败。如果保留了这样的关键字作为表名,则需要将表名放在括号中:
SELECT*FROM[numeric]
您的表称为numeric
,这也是一种SQL数据类型。SQL解析器认为它是一种数据类型,因此查询失败。如果保留了这样的关键字作为表名,则需要将表名放在括号中:
SELECT*FROM[numeric]
不是numeric
某种SQL数据类型吗?试着把这个名字写进密码,即使用[numeric]
。您确定已将表名命名为“数字”吗?@D.R.是的,我将表名保留为“数字”。但我会更改表名并尝试。谢谢。@D.R.这正是你提到的事情。故障仅与表名有关。一旦我更改了它,执行就不会出错。非常感谢。我可以对评论投赞成票,因为我不能将其标记为答案。请留下作为其他人的答案。我已将我的评论转换为答案。numeric
不是某种SQL数据类型吗?试着把这个名字写进密码,即使用[numeric]
。您确定已将表名命名为“数字”吗?@D.R.是的,我将表名保留为“数字”。但我会更改表名并尝试。谢谢。@D.R.这正是你提到的事情。故障仅与表名有关。一旦我更改了它,执行就不会出错。非常感谢。我可以对评论投赞成票,因为我不能将其标记为答案。请留下作为其他人的答案。我已将我的评论转换为答案。如果您查看FROM子句中的异常语法错误。
问题可能不是调用getString
,是吗?是的,即使FROM子句正确,有时也可能无法获取值。这不是错误。第一列是Webservice。表名只是一个错误。如果查看FROM子句中的异常语法错误。
问题可能不是调用getString
,是吗?是的,即使FROM子句正确,有时也可能无法获取值。这不是错误。第一列是Webservice。表名只是一个错误。实际上我们可以使用;因为我正在使用ODBC驱动程序。分号没有给我任何错误。我更改了表名,现在工作正常。谢谢你的回答。其实我们可以用;因为我正在使用ODBC驱动程序。分号没有给我任何错误。我更改了表名,现在工作正常。谢谢你的回答。