0

私はこれをやっています:

String columns = "UserHash,EMail,Name,Gender,BirthYear,Birthday,MaritalStatus,UserID,ReferralUser,Likes";

String sql = "INSERT INTO Users ("+ columns+") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?);";
        byte[] bytesOfUserHash = user.getId().getBytes("UTF-8");

        MessageDigest md = MessageDigest.getInstance("MD5");
        byte[] userHash = md.digest(bytesOfUserHash);

        stmt  = con.prepareStatement(sql);
        stmt.setBytes(1,userHash);
        stmt.setString(2, user.getEmail());
        stmt.setString(3, user.getName());
        stmt.setInt(4, user.getGender().value());
        stmt.setString(5, birthday.split("-")[0]);
        stmt.setString(6, birthday);
        stmt.setInt(7, user.getRelationshipStatus().value());
        stmt.setString(8, user.getId());
        stmt.setString(9, referraluser);
        stmt.setString(10, likesjson);
        stmt.executeUpdate();

を除くすべての値が挿入されているuserHashため、クエリは成功しています。何を確認すればよいですか?

また、今はユーザー ID をハッシュしているだけですが、ユーザー ID + をハッシュしたいことに注意してくださいCURRENT_TIMESTAMP

更新: 健全性チェックとして、VARCHAR(45) 型の文字列を UserHash 列に投げてみましたが、それも機能していません。MD5 の問題とは関係なく、何かが明らかにおかしくなっています。

4

1 に答える 1