2016-03-05 163 views
-1

如何在我的數據庫中的ProductInformation表中選擇我的最後一個ProductCode(主鍵),並在其上添加+1並將其放在我的文本字段上以使我的添加產品表單變爲自動生成?這是我目前添加產品的代碼。自動生成密鑰

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           
    // TODO add your handling code here: 
    int Confirm = JOptionPane.showConfirmDialog(null, "Are you sure you want to add this product?"); 
    if(Confirm == 0) { 
     String SQL = "INSERT INTO ProductInformation VALUES (?,?)"; 
     String ConnectionURL = "jdbc:mysql://127.0.0.1:3306/SystemProject?"+"user=root&password="; 
     try { 
      Class.forName("com.mysql.jdbc.Driver"); 
      Connect = DriverManager.getConnection(ConnectionURL); 
      PS = Connect.prepareStatement(SQL); 
      PS.setString(1, ProductCodeText.getText()); 
      PS.setString(2, ProductNameText.getText()); 
      if("".equals(ProductNameText.getText()) || "".equals(ProductCodeText.getText()) || ("".equals(ProductNameText.getText()) && ("".equals(ProductCodeText.getText())))) { 
       JOptionPane.showMessageDialog(null, "Please fill all the information needed","Error in adding product",JOptionPane.ERROR_MESSAGE); 
       AddProductForm APF = new AddProductForm(); 
       APF.setVisible(true); 
       this.hide(); 
      } 
      else { 
       int Count = PS.executeUpdate(); 
       if(Count > 0) { 
        JOptionPane.showMessageDialog(null, "Product saved"); 
        ProductCodeText.setText(""); 
        ProductNameText.setText(""); 
       } 
      } 
     } 
     catch(ClassNotFoundException | SQLException e) { 
      JOptionPane.showMessageDialog(null, "Can't duplicate product code","Error",JOptionPane.ERROR_MESSAGE); 
     } 
    } 
} 

什麼我會添加到我的代碼,使它的工作方式。多謝你們。

+1

當您已經獲得連接,準備語句並設置值時,驗證並顯示GUI對話框有點晚。所有這些應該先於數據庫的任何事情。 – EJP

+0

我剛剛重新創建了我的數據庫先生。我會對我的桌子和列上做什麼。請指導我。我只需要ProductCode和ProductName。我唯一的問題是如何設置我的文本字段上的最後一個ProductCode + 1變得獨特。謝謝先生。 –

回答

0

你可以這樣做:

CREATE TABLE Product 
(
    ID int NOT NULL AUTO_INCREMENT, 
    PRIMARY KEY (ID) 
) 

如果沒有,這取決於您所使用的IDE,IDE最喜歡NetBeansVisual Studio,它可以讓你通過自己的用戶界面設置有自動遞增領域。

+0

我該把這個命令先生放在哪裏?在phpmyadmin中?順便說一句,即時通訊使用Netbeans和XAMPP。謝謝先生。 –

+0

@JohndaveDavid如果你使用NetBeans,你甚至不必使用代碼。創建一個表,添加字段,sql命令將自動生成。在提交這些自動生成的命令之前,右鍵單擊您的主鍵字段(如果不是右鍵單擊,請瀏覽表格的屬性),將自動增量設置爲true。 – user3437460

+0

對不起,先生,我是netbeans的新人,我會在哪裏創建一個表格?我應該把它放在我的表格上嗎?順便說一句,加我facebook的先生。我真的需要幫助。謝謝先生。 Fb.me/DForDeyb –