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

JavaのPreparedStatementを使用してSQLクエリに配列を渡す

    必要な数の質問マークを含む文字列を動的に生成することで同じ問題を解決しました。スニペットは次のとおりです。-

    String param = "(";
    for(int i=0;i<suppliers.length;i++){
    param = param+"?,";
    }
    param = param.substring(0,param.length()-1);
    param=param+")";
    
    query = query + param;
    
    PreparedStatement ps = connection.prepareStatement(query);
    
    for(int i=0;i<suppliers.length;i++){
    ps.setString(i+1,suppliers[i]);
    }
    



    1. ORA-011033を解決する方法:ORACLEの初期化またはシャットダウンが進行中です

    2. CASEを使用したMYSQLLEFTJOINの最適化

    3. クエリ結果をMariaDBのコンマ区切りリストに変換する

    4. ORA-00904:ID:識別子が無効です