【发布时间】:2019-10-19 06:55:18
【问题描述】:
即使我的查询在 SQL Management Studio 中运行,我在准备好的语句中也遇到了语法错误。我正在使用 GlassFish 4.1.1。我做错了什么?
我尝试稍微切换一下语法,但总是出错。
这是我的连接池代码:
try {
InitialContext ic = new InitialContext();
dataSource = (DataSource) ic.lookup("java:comp/env/" + database);
} catch (Exception ex) {
ex.printStackTrace();
}
这是我的查询代码:
ConnectionPool pool = new ConnectionPool("BoxPointHAMBURGO");
Connection connection = pool.getConnection();
PreparedStatement ps = null;
ResultSet rs = null;
try {
String query = "SELECT Tabla FROM BoxPointHAMBURGO.dbo.NombresTablas";
ps = connection.prepareStatement(query);
rs = ps.executeQuery();
} catch (Exception ex) {
System.err.println("Error: " + ex.getMessage());
}
我得到的错误是:
Syntax error: Encountered "." at line 1 column 39.
【问题讨论】:
-
为什么有两个点?
-
这就像在这种情况下放置 .dbo.NombresTablas 一样,它也会在我的 Java 代码中给我一个错误,但在 SQL Management Studio 中却没有
-
MAINDB的值是什么?它是一个非空常量吗?能否请您添加整个query变量值? -
@KarolDowbecki 是的,MAINDB 是 BoxPointHAMBURGO,我将编辑我的问题
-
@KarolDowbecki 是的
标签: java sql-server jdbc prepared-statement