我正在尝试连接到一个SAP/Sybase IQ数据库,该数据库运行在主从配置中。当我连接到主服务器时,连接成功。然而,对于奴隶,我只能在将完全管理特权(或Sybase术语中的服务器运算符)分配给我所使用的用户时才能连接;否则,我将得到“登录失败”错误。我已经确保用户名/密码是正确的,事实上,它们在主服务器上运行得很好。
我既没有选择连接到主,也不能获得全面管理特权在长期的基础上。有什么可以让我的JDBC代码在这个主从配置上与从服务器一起工作吗?下面是我的JDBC代码,这是相当标准的。
import java.sql.*;
public class SybaseJDBCConnector {
static final String JDBC_DRIVER = "com.sybase.jdbc4.jdbc.SybDriver";
static final String DB_URL = "jdbc:sybase:Tds:host:port/dbname";
static final String USER = "username";
static final String PASS = "password";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try{
Class.forName(JDBC_DRIVER);
System.out.println("Connecting to database...");
conn = DriverManager.getConnection(DB_URL,USER,PASS);
System.out.println("Successfully connected");
conn.close();
}catch(SQLException se){
se.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}finally{
// do something
}
}
}发布于 2016-10-17 07:30:13
在db url中添加charset=eucgb将解决这个问题。示例:"jdbc:sybase:Tds:host:port/dbname?charset=eucgb“
https://stackoverflow.com/questions/39658163
复制相似问题