from子句中的java sql异常语法错误

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正在抛出一个异常作为

我有一个access数据库,并试图在java中使用它。我想选择它,并写了一个声明作为

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驱动程序。分号没有给我任何错误。我更改了表名,现在工作正常。谢谢你的回答。