ホームページ >データベース >mysql チュートリアル >「java.sql.SQLException: パラメータ インデックスが範囲外です」というメッセージが表示されるのはなぜですか?
java.sql.SQLException: パラメーター インデックスが範囲外です (1 > パラメーターの数、つまり 0)
このエラーが発生しますSQL 内に対応するプレースホルダーがないプリペアド ステートメントにパラメータを設定しようとしたときquery.
原因:
解決策:
このエラーを解決するには、設定されているパラメータに対して正しい数のプレースホルダが SQL クエリに含まれていることを確認してください。例:
String sql = "INSERT INTO tablename (col1, col2, col3) VALUES (?, ?, ?)"; PreparedStatement preparedStatement = connection.prepareStatement(sql); preparedStatement.setString(1, val1); preparedStatement.setString(2, val2); preparedStatement.setString(3, val3);
補足:
String sql = String.format("INSERT INTO tablename (col1, col2, col3) VALUES (%s, %s, %s)", val1, val2, val3);
References:
以上が「java.sql.SQLException: パラメータ インデックスが範囲外です」というメッセージが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。