Я пытаюсь установить Dtat во встроенной Java DB, и я не знаю, где моя ошибка. Я пробовал так много вещей типов кода, чтобы вставить данные, но ничего не работает? С MySQL это работает, но это первый встроенный DB, работающий с
try {
int rows = jTableA.getRowCount();
Class.forName("org.apache.derby.jdbc.ClientDriver");
con = DriverManager.getConnection("jdbc:derby://localhost:1527/meinedb", "root", "root123");
Statement st = con.createStatement();
String delete = "DELETE FROM ROOT.ARTIKEL";
st.execute(delete);
int b = 0;
for (int row = 0; row < rows; row++) {
Integer artikelnummer = (Integer) jTableA.getValueAt(row, 0);
String beschreibung = (String) jTableA.getValueAt(row, 1);
String bestellenbei = (String) jTableA.getValueAt(row, 2);
Integer menge = (Integer) jTableA.getValueAt(row, 3);
String bestellenbis = (String) jTableA.getValueAt(row, 4);
Boolean bestellt = (Boolean) jTableA.getValueAt(row, 5);
if (bestellt == true) {
b = 1;
}
if (bestellt == false) {
b = 0;
}
String sql ="INSERT INTO ROOT.ARTIKEL (ARTIKELNUMMER, BESCHREIBUNG, BESTELLENBEI, "
+ "ARTIKELMENGE, BESTELLENBIS, BESTELLT)"
+ " VALUES ('"+artikelnummer+"', '"+beschreibung+"', '"+bestellenbei+"', '"+menge+"',"
+ " '"+bestellenbis+"', '"+bestellt+"')" ;
st.execute(sql);
}
JOptionPane.showMessageDialog(null, "Artikel erfolgreich gespeichert");
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Speichern Fehlgeschlagen");
}
исключение:
пробег:
29 марта, 2019 13:17:41 Auftrags. Datenbank SpeichernA
SCHWERWIEGEND: ноль
java.sql.SQLSyntaxErrorException: Spalten vom Typ 'INTEGER' dürfen keine Werte des Typs 'CHAR' enthalten.
в org.apache.derby.client.am.SQLExceptionFactory40.getSQLException (неизвестный источник)
в org.apache.derby.client.am.SqlException.getSQLException (Неизвестный источник)
at org.apache.derby.client.am.Statement.execute (Неизвестный источник)
в Auftrags.Datenbank.SpeichernA (Datenbank.java:135)
в Auftrags.MainWindow.jBsaveOrderActionPerformed (MainWindow.java:1567)
на Auftrags.MainWindow.access $ 4800 (MainWindow.java:19)
в Auftrags.MainWindow $ 49.actionPerformed (MainWindow.java:857)
в javax.swing.AbstractButton.fireActionPerformed (AbstractButton.java:2022)
в javax.swing.AbstractButton $ Handler.actionPerformed (AbstractButton.java:2348)
в javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:402)
в javax.swing.DefaultButtonModel.setPressed (DefaultButtonModel.java:259)
в javax.swing.plaf.basic.BasicButtonListener.mouseReleased (BasicButtonListener.java:252)
в java.awt.Component.processMouseEvent (Component.java:6539)
в javax.swing.JComponent.processMouseEvent (JComponent.java:3324)
в java.awt.Component.processEvent (Component.java:6304)
в java.awt.Container.processEvent (Container.java:2239)
в java.awt.Component.dispatchEventImpl (Component.java:4889)
в java.awt.Container.dispatchEventImpl (Container.java:2297)
в java.awt.Component.dispatchEvent (Component.java:4711)
в java.awt.LightweightDispatcher.retargetMouseEvent (Container.java:4904)
в java.awt.LightweightDispatcher.processMouseEvent (Container.java:4535)
в java.awt.LightweightDispatcher.dispatchEvent (Container.java:4476)
в java.awt.Container.dispatchEventImpl (Container.java:2283)
в java.awt.Window.dispatchEventImpl (Window.java:2746)
в java.awt.Component.dispatchEvent (Component.java:4711)
в java.awt.EventQueue.dispatchEventImpl (EventQueue.java:760)
на java.awt.EventQueue.access $ 500 (EventQueue.java:97)
at java.awt.EventQueue $ 3.run (EventQueue.java:709)
at java.awt.EventQueue $ 3.run (EventQueue.java:703)
at java.security.AccessController.doPrivileged (собственный метод)
в java.security.ProtectionDomain $ JavaSecurityAccessImpl.doIntersectionPrivilege (ProtectionDomain.java:74)
в java.security.ProtectionDomain $ JavaSecurityAccessImpl.doIntersectionPrivilege (ProtectionDomain.java:84)
at java.awt.EventQueue $ 4.run (EventQueue.java:733)
at java.awt.EventQueue $ 4.run (EventQueue.java:731)
at java.security.AccessController.doPrivileged (собственный метод)
в java.security.ProtectionDomain $ JavaSecurityAccessImpl.doIntersectionPrivilege (ProtectionDomain.java:74)
в java.awt.EventQueue.dispatchEvent (EventQueue.java:730)
в java.awt.EventDispatchThread.pumpOneEventForFilters (EventDispatchThread.java:205)
в java.awt.EventDispatchThread.pumpEventsForFilter (EventDispatchThread.java:116)
в java.awt.EventDispatchThread.pumpEventsForHierarchy (EventDispatchThread.java:105)
в java.awt.EventDispatchThread.pumpEvents (EventDispatchThread.java:101)
в java.awt.EventDispatchThread.pumpEvents (EventDispatchThread.java:93)
в java.awt.EventDispatchThread.run (EventDispatchThread.java:82)
Вызывается: org.apache.derby.client.am.SqlException: Spalten vom Тип 'INTEGER' dürfen keine Werte des Typs 'CHAR' энтальтен.
at org.apache.derby.client.am.Statement.completeSqlca (неизвестный источник)
at org.apache.derby.client.am.Statement.completeExecuteImmediate (неизвестный источник)
at org.apache.derby.client.net.NetStatementReply.parseEXCSQLIMMreply (неизвестный источник)at org.apache.derby.client.net.NetStatementReply.readExecuteImmediate (неизвестный источник)
at org.apache.derby.client.net.StatementReply.readExecuteImmediate (неизвестный источник)
на org.apache.derby.client.net.NetStatement.readExecuteImmediate_ (неизвестный источник)
at org.apache.derby.client.am.Statement.readExecuteImmediate (неизвестный источник)
в org.apache.derby.client.am.Statement.flowExecute (Неизвестный источник)
в org.apache.derby.client.am.Statement.executeX (неизвестный источник)
... еще 41