java - 数字格式异常: null

标签 java jdbc prepared-statement

我在数据库中使用以下数据类型。

但是我得到了异常作为异常:

in thread "Thread-2" java.lang.NumberFormatException: null

如何解决

btn.addActionListener(new ActionListener()
{
    Thread thread= new Thread()
    {
        public void run()
        { 
            Connection con= conn.getconnection();
            get_data();
            String Query = " INSERT INTO employees (Id,
                                P_F_No,
                                Name,
                                Date,
                                Guard/LP/ALP,
                                Incomming_Train,
                                Sign_off,
                                Room_Bed_No,
                                Out_going_train_time,
                                Sign_on,
                                subisezed_meal)
                                VALUES
                                (?,?,?,?,?,?,?,?,?,?,?)";

            try
            {
                PreparedStatement pr = con.prepareStatement(Query);
                pr.setString(1,data[0]);
                pr.setInt(2,Integer.parseInt(data[1]));
                pr.setString(3,data[2]);
                pr.setDate(4,Date.valueOf(data[3]));
                pr.setString(5,data[4]);
                pr.setTime(6,Time.valueOf(data[5]));
                pr.setTime(7,Time.valueOf(data[6]));
                pr.setString(8,data[7]);
                pr.setTime(9,Time.valueOf(data[8]));
                pr.setTime(10,Time.valueOf(data[9]));
                pr.setString(11,data[10]);
                pr.executeUpdate();
            }
            catch (SQLException ex)
            {
                System.out.println(ex);
            }
        }
    };

    thread.start();
});

最佳答案

这一行:

pr.setInt(2,Integer.parseInt(data[1]));

对 null 值调用 parseInt 将导致出现 NumberFormatException,data[1] 将为 null。

关于java - 数字格式异常: null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9923571/

相关文章:

java - Angular向java发送错误的日期格式并且无法在表中创建对象

java - 如何处理异常并完成方法的功能而不提示用户已发生的异常

java - 数据库名称包含正斜杠的 PostgreSQL JDBC URL

java - 准备语句 setString 添加不必要的单引号到字符串

php - "No data supplied for parameters in prepared statement"

php - 了解 PDO/Prepared Statements 如何与多种数据库类型配合使用

java - 尝试读取 SQL 表时,参数索引超出范围(1 > 参数数量,即 0)

java - 使用 InputHandler 在 libGdx 中创建播放按钮

java - 在 Oracle 12C jdbc 驱动程序中获取自动递增 key 时出现 NPE

java - 需要在 GC 之前关闭存储为 SoftReference 的PreparedStatements