这个问题有两个部分。
我一直在尝试使用 Eclipse 中的现有项目安装和测试 SQL Anywhere Sybase 连接。我做了以下事情:
已安装 SQL Anywhere 17
导航到 SQL Anywhere 17 Java 文件夹并使用以下命令安装
sajdbc4.jar
:
mvn install:install-file -Dfile=<path/to/sajdbc4.jar> -DgroupId=com.sqlanywhere -DartifactId=sajdbc4 -Dversion=17.0.0 -Dpackaging=jar
添加了以下 POM 依赖项:
<dependency>
<groupId>com.sqlanywhere</groupId>
<artifactId>sajdbc4</artifactId>
<version>17.0.0</version>
</dependency>
尝试导入:
com.sqlanywhere.jdbc4.sqlanywhere.SQLAnywhereDriver
但是它给了我一个“无法解决”的错误
试过
mvn clean install
,没用。
这是我的代码:
public Map<String,String> getServiceStatuses() throws Exception {
var obj = new HashMap<String,String>();
obj.put("status","success");
Connection conn = null;
Statement stmt = null;
try{
//STEP 2: Register JDBC driver
Class.forName("com.sqlanywhere.jdbc4.sqlanywhere");
//STEP 3: Open a connection
System.out.println("Connecting to database...");
DriverManager.setLoginTimeout(10);
conn = DriverManager.getConnection("jdbc:sqlanywhere:uid=abc;pwd=def;eng=xyz");
if(conn.isClosed()) {
System.out.println("This is closed");
} else {
System.out.println("This is open");
}
} catch(Exception e) {
e.printStackTrace();
}
return obj;
}
现在使用这段代码我还不能测试 SQL Anywhere Sybase 驱动程序,这让我想到了第二个问题。
当我安装 SQL Anywhere 17 时,没有安装在本地设置 Sybase SQL Anywhere 服务器所需的 Sybase Central。我尝试在另一台机器上安装 SQL Anywhere 17,但它仍然无法安装 Sybase Central。我登录他们的网站下载了试用版。我安装了开发者版本。这次我卸载并重新安装了“自定义”,但仍然没有显示 Sybase Central 选项。我在网上找不到任何与此有关的有用内容
对于糟糕的格式感到抱歉,如果有人可以帮助我,那就太好了。我不确定我是否以正确的方式在本地 mvn 存储库中安装了 sajdbc4,而且我无法测试它,因为我无法安装 Sybase Central。
在 getServiceStatuses(){} 使用
Class.forName("com.sybase.jdbc4.sqlanywhere.SQLAnywhereDriver"); //注册
对于第二个问题:Sybase Central 不再包含在 SQL Anywhere 17 包中。 因此,请尝试使用第三方数据库管理工具或命令行工具。