sql >> データベース >  >> RDS >> Oracle

JavaのSQL*PlusからSYSとしてOracleに接続する方法

    すべての接続情報を単一の値として渡します。コマンドラインからのこれと同等:

    sqlplus "sys as sysdba/[email protected]<connect_string>"
    

    これは、SQL*Plusログオンヘルプを印刷するのと同じ応答を取得します。また、パスワードが間違った場所にありますが、それほど遠くはありません。コマンドラインからこれは機能します:

    sqlplus "sys/tiger" "as" "[email protected]<connect_string>"
    

    したがって、5つの引数をProcessBuilderに渡す必要があります 、次のようなもの:

        String sqlCmd = "sqlplus";  
        String arg1   = "sys/tiger";
        String arg2   = "as";
        String arg3   = "[email protected](DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(Host=hostname)(Port=PORT ID))(CONNECT_DATA=(SID=SID)))";
        String arg4   = fileName;
        ...
            ProcessBuilder pb = new ProcessBuilder(sqlCmd, arg1, arg2, arg3, arg4);
    

    これは、環境がsysdbaとしてリモート接続を許可するように構成されている場合にのみ機能します。 。 sysとして何かをする 非常にまれであり、sysとして実行するスクリプトがあるはずです。 Javaラッパーがやり過ぎのように見えるほど珍しいように見えます-そして、sysとして接続する可能性があるように見えます 日常的に、これは良い考えではありませんが、おそらくこれは単なる学習演習です。



    1. web.configasp.netのOracleデータベース接続

    2. SQL Server(T-SQL)でAM/PMを時間値に追加する方法

    3. MySQLのURL、ホスト、ポート、およびユーザー名を確認するにはどうすればよいですか?

    4. PHPMySQLYii-データベースの読み取りと書き込みではない