簡體   English   中英

使用 DerbyDB 在 Netbeans 中自動增加身份

[英]Auto-Increment of Identity in Netbeans Using DerbyDB

我正在嘗試將數據插入到 CUSTOMER 表中。

private void c_enterActionPerformed(java.awt.event.ActionEvent evt) {                                        
    String insertSQL = "insert into CUSTOMER(CUST_ID, CUST_NIC, CUST_FNAME,CUST_LNAME, CUST_EMAIL, CUST_ADDRESS, CUST_PHONE, CUST_IMG) values(?,?,?,?,?,?,?,?)";
    try{
        ps = con.prepareStatement(insertSQL);
        ps.setString(1,c_id_text.getText());
        ps.setString(2,c_nic_text.getText());
        ps.setString(3,c_fname_text.getText());
        ps.setString(4,c_lname_text.getText());
        ps.setString(5,c_email_text.getText());
        ps.setString(6,c_address_text.getText());
        ps.setString(7,c_phone_text.getText());
        ps.setString(8,img_path_txt.getText());
        ps.execute();
        JOptionPane.showMessageDialog(null, "New Customer Inserted\nCongratulations!");
        c_id_text.setText("");
        c_nic_text.setText("");
        c_fname_text.setText("");
        c_lname_text.setText("");
        c_email_text.setText("");
        c_address_text.setText("");
        c_phone_text.setText("");
        img_path_txt.setText("");
        updateTable();          
    }catch(Exception e){
        JOptionPane.showMessageDialog(null, "Insertion error: "+e);
    }
}    

該表是使用以下方法創建的:

CREATE TABLE CUSTOMER(
CUST_ID INT PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),
CUST_NIC VARCHAR(14),
CUST_FNAME VARCHAR(20),
CUST_LNAME VARCHAR(25),
CUST_EMAIL VARCHAR(45), 
CUST_ADDRESS VARCHAR(60),
CUST_PHONE INTEGER,
CUST_IMG VARCHAR(100));
SELECT * FROM AKASH.CUSTOMER FETCH FIRST 100 ROWS ONLY;

在此處輸入圖像描述

如圖所示,我已禁用 CUST_ID 文本。 它告訴我“嘗試修改身份列‘CUST_ID’。

現在,澄清一下:我知道發生了什么。 但我不知道如何解決它。 我試圖刪除ps.setString(1,c_id_text.getText()); ,那沒有用。 我還嘗試從String insertSQL...中刪除 CUST_ID ,但無濟於事。 如果我嘗試使用“插入行”按鈕從 SQL 輸入數據,它可以工作並且 CUST_ID 列顯示“”

發現我的錯誤。 注釋掉ps.setString(1,c_id_text.getText());后解決c_id_text.setText(""); 以及從 insertSQL 代碼行中刪除 CUST_ID。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM