>

"지불"을 클릭하면 POS 시스템이 어떤 형태의 계산을 수행합니다. "지불"버튼을 누르면 "지불"텍스트 필드의 숫자 값이 "소계"텍스트 필드에있는 값에서 공제되어야하며,이 데이터와 동시에 "잔액"텍스트 필드에 잔액이 표시됩니다. 해당 열의 "판매"테이블에 삽입해야합니다. 내 데이터베이스의 "balance"열의 길이가 INT 데이터 유형 11 인 경우에도 "balance"텍스트 필드의 값이 해당 열에 삽입되지 않습니다.

참고 : 재미있는 점은 "balance"의 데이터 유형을 varchar로 변경하면 데이터를 삽입하지만 원하는 실제 값 대신 0을 표시한다는 것입니다.

아래는 나의 판매 방법입니다

오류는

와이즈 비즈

com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect integer value: '' for column 'balance' at row 1']Image

private void sales(){ DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd"); LocalDateTime now = LocalDateTime.now(); String date = dtf.format(now); String subT = subtotal_textfield.getText(); String payinKsh = pay_textfield.getText(); String bal = balance_textfield.getText(); int lastinsertID = 0; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection("jdbc:mysql://localhost/supermarket", "root",""); String query = "insert into sales(date,subtotal,pay,balance)values(?,?,?,?)"; pst = conn.prepareStatement(query, Statement.RETURN_GENERATED_KEYS); pst.setString(1, date); pst.setString(2, subT); pst.setString(3, payinKsh); pst.setString(4, bal); pst.executeUpdate(); ResultSet generatedKey = pst.getGeneratedKeys(); if (generatedKey.next()) { lastinsertID = generatedKey.getInt(1); } JOptionPane.showMessageDialog(this, lastinsertID); } catch (ClassNotFoundException ex) { Logger.getLogger(POS.class.getName()).log(Level.SEVERE, null, ex); } catch (SQLException ex) { Logger.getLogger(POS.class.getName()).log(Level.SEVERE, null, ex); } }

  • 답변 # 1

    데이터 유형이 일치하지 않아 발생합니다. 삽입을 수행하기 위해 유사하거나 일치하는 동일한 데이터 유형으로 가져와야 할 것. 당신의 balance 를 유지   INT 로 열  당신이 언급 한 다음 bal 를 변환   int 에 대한 문자열 값  이렇게 :

    Integer.parseInt(bal);
    
    

    그러므로

    pst.setString(4, bal);
    
    

    이 내용->(편집 됨)

    try
    {
        pst.setInt(4, Integer.parseInt(bal));
    } catch(Exception e)
    {
        pst.setInt(4, 0);
    }
    
    

    또는 balance 변경  와이즈 비즈   column 로   varchar 를 삽입하십시오  문자열 값으로하지만 우선 bal 에서 무엇을 얻었는지 확인하십시오.  변수.

    bal

관련 자료

  • 이전 Dynamics CRM에서 관련 웹 리소스를 가져올 수 있습니까?
  • 다음 Powershell에서 직접 보고서를 나열하는 방법