JDBC连接密码但没有用户名?

时间:2016-05-18 10:06:59

标签: java oracle jdbc database-connection

我正在尝试连接到需要密码但是空白用户名的服务器(通过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;
}

1 个答案:

答案 0 :(得分:0)

您是否尝试通过DriverManager界面进行连接?

Connection conn = DriverManager.getConnection(url, props);

props没有任何用户名条目。