我正在尝试连接到需要密码但是空白用户名的服务器(通过JDBC)。当我尝试使用空字符串("")时会导致错误:
java.sql.SQLException:调用中的无效参数
我正在使用的代码用于连接到另一台服务器(需要用户名和密码),因此它可以运行;只是不在这种特定情况下(空字符串用户名)。我也可以访问此特定服务器的连接,该服务器不需要通过SQLDeveloper的用户名,因此不会脱机或无法访问。在SQLDeveloper中,我可以输入空的用户名字段而不会发生意外。
从我所读过的内容中,可以使用用户名和密码与JDBC连接,或者两者都没有。但我无法找到空白用户名的解决方案。必须有一个黑客的解决问题的方法。
private Connection getConnection() throws SQLException
{
OracleDataSource ds = new OracleDataSource();
ds.setURL("jdbc:oracle:thin:@" + serverName + ":" + portNumber + ":" + sid);
System.out.println("attempting connection");
connection = ds.getConnection(textFieldUsername.getText(), new String(passwordField.getPassword()));
System.out.println("connection established");
return connection;
}
答案 0 :(得分:0)
您是否尝试通过DriverManager界面进行连接?
Connection conn = DriverManager.getConnection(url, props);
props
没有任何用户名条目。