Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向Java DB插入数据失败,出现错误,因为整型列不能接受字符数据_Java_Database_Derby - Fatal编程技术网

向Java DB插入数据失败,出现错误,因为整型列不能接受字符数据

向Java DB插入数据失败,出现错误,因为整型列不能接受字符数据,java,database,derby,Java,Database,Derby,我试图在我的嵌入式Java数据库中设置Dtat,但我不知道我的错误在哪里。我尝试了很多东西,用不同类型的代码来插入数据,但什么都不起作用?使用mysql它可以工作,但这是我使用的第一个嵌入式db try { int rows = jTableA.getRowCount(); Class.forName("org.apache.derby.jdbc.ClientDriver"); con = DriverManager.get

我试图在我的嵌入式Java数据库中设置Dtat,但我不知道我的错误在哪里。我尝试了很多东西,用不同类型的代码来插入数据,但什么都不起作用?使用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");
        }
试试看{
int rows=jTableA.getRowCount();
forName(“org.apache.derby.jdbc.ClientDriver”);
con=DriverManager.getConnection(“jdbc:derby://localhost:1527/meinedb“、”根“、”根123”);
语句st=con.createStatement();
String delete=“从ROOT.ARTIKEL删除”;
执行(删除);
int b=0;
对于(int row=0;row
例外情况:

运行: 2019年11月29日下午1:17:41奥夫特拉格斯。达滕班克斯皮切纳 SCHWERWIEGEND:null java.sql.SQLSyntaxErrorException:Spalten vom type'INTEGER'dürfen keine Werte des Typs'CHAR'enthalten。 位于org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(未知源) 位于org.apache.derby.client.am.SqlException.getSQLException(未知源) 位于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.MouseRelease(BasicButtonListener.java:252) 位于java.awt.Component.ProcessMouseeEvent(Component.java:6539) 位于javax.swing.JComponent.ProcessMouseeEvent(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.RetargetMouseeEvent(Container.java:4904) 位于java.awt.LightweightDispatcher.ProcessMouseeEvent(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) 在java.awt.EventQueue$3.run(EventQueue.java:709) 在java.awt.EventQueue$3.run(EventQueue.java:703) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74) 位于java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84) 在java.awt.EventQueue$4.run(EventQueue.java:733) 在java.awt.EventQueue$4.run(EventQueue.java:731) 位于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.PumpeEventsforHierarchy(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 Typ'INTEGER'dürfen keine Werte des Typs'CHAR'enthalten。 位于org.apache.derby.client.am.Statement.completeSqlca(未知源) 位于org.apache.derby.client.am.Statement.completeexecuteimimediate(未知源) 位于org.apache.derby.client.net.NetStatementReply.parseEXCSQLIMMreply(未知源) 位于org.apache.derby.client.net.NetStatementReply.ReadExecuteMiddate(未知源) 位于org.apache.derby.client.net.StatementReply.ReadExecuteMiddate(未知源) 位于org.apache.derby.client.net.NetStatement.readExecuteImmediate\上(未知源) 在org.apache.derby.client.am