0

次のコードを実行しようとしたときに、各実行で値を繰り返し追加します。クエリを使用してそれを維持するにはどうすればよいですか.私の動機は、テーブル内の新しい変更を探すことです.テーブル内のすべての値ではありません.

参照用のコード:

 connection = (Connection) dbSource.getConnection();
        String qry = "SELECT studentName From batcha "; 

        stmt = (PreparedStatement)  connection.prepareStatement(qry);    
        rs =  stmt.executeQuery();

            while (rs.next()) {

                String check=new String(rs.getString(("studentName")));
                String student = check.replaceAll("\\s","");

                String userQry = "SELECT user_name From users "; 
                stmt1=connection.prepareStatement(userQry);
                rs1=stmt1.executeQuery();

                System.out.println(student+"ssssssssssssssssssssssssssssssss");
                System.out.println("");
                System.out.println("");
                System.out.println("");

                while(rs1.next()){

                     Class.forName("com.mysql.jdbc.Driver");
                connection = (Connection) DriverManager.getConnection(DB_URL_table, USER, PASS);

                String fclty=new String(rs1.getString(("user_name")));
                String fcltyog = fclty.replaceAll("\\s","");

                String sql1 = "INSERT IGNORE INTO "+student+"(fcltyName,CommunicationOral,Communicationwritten,Leadership,AnalyticalAbilities,Interpersonalskills,DecisionMakingSkills,SelfConfidence,Creativity,Punctualityregularity,GeneralAwareness,Commitment,HardWork)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)"; 

                newStmt=(PreparedStatement) connection.prepareStatement(sql1); 
                System.out.println(fcltyog+"fffffffffffffffffffffffffffffffffffffffff");
                newStmt.setString(1, fclty);
                newStmt.setInt(2, 0);
                newStmt.setInt(3, 0);
                newStmt.setInt(4, 0);
                newStmt.setInt(5, 0);
                newStmt.setInt(6, 0);
                newStmt.setInt(7, 0);
                newStmt.setInt(8, 0);
                newStmt.setInt(9, 0);
                newStmt.setInt(10, 0);
                newStmt.setInt(11, 0);
                newStmt.setInt(12, 0);
                newStmt.setInt(13, 0);

                newStmt.executeUpdate();

            newStmt.close();

前もって感謝します

:深い

4

1 に答える 1

1

DB1 のテーブルに 1 つのステータス列 (値は NEW、OLD のいずれか) を保持し、ステータスが NEW の行を選択し、他のデータベースに挿入し、選択した行のステータスを OLD に更新できます。

これを繰り返し行う必要があり、一定の間隔でループしている可能性があります。

于 2013-08-14T13:37:25.920 に答える