の戻り値の型は何です:次のようにして、私は他に一つのテーブルの内容をコピーしようとしていますSQLのAVG()関数
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Truncated incorrect DOUBLE value: 'pont'
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3971)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3909)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2527)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2680)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2501)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1858)
at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:2079)
at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:2013)
at com.mysql.jdbc.PreparedStatement.executeLargeUpdate(PreparedStatement.java:5104)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1998)
at Sample.main(Sample.java:101)
:
sql ="INSERT INTO customer (nev, quantity, frequency) SELECT "
+ "?,COUNT(?),AVG(?)"
+ "FROM tempcustomer GROUP BY ? ORDER BY COUNT(?) DESC";
preparedStmt=conn.prepareStatement(sql);
preparedStmt.setString(1, "nev");
preparedStmt.setString(2, "nev");
preparedStmt.setString(3, "pont");
preparedStmt.setString(4, "nev");
preparedStmt.setString(5, "nev");
preparedStmt.executeUpdate();
私は、次のエラーメッセージが表示されます
私はJDBCに新しいです、事前に感謝!
パラメータとして列名をクエリに渡すことはできません。値のみ。列名は、準備されたステートメントの全体点である、照会を準備するためにデータベースによって必要とされます。データベースが何を選択するのか、何をグループ化するのか、または何を注文するのかが分からなければ、実行計画を作成することはできません。 –
あなたは正しいです、それは問題を解決しましたありがとう! –