mehrere Datenbankupdates nacheinander

Status
Nicht offen für weitere Antworten.

Fridolin

Bekanntes Mitglied
Hallo,
weiß wer von euch wie man am besten mehrere Datenbankupdates, die einem Event angehängt sind, nach und nach in die Datenbank eintragen kann?
Das stell ich mir so vor, du hast eine JTable in der in jeder Zeile ein anderer Datensatz steht und erst wenn alle Eingaben gemacht wurden hat der benutzer noch die auswahl auf abbrechen zu klicken und dann wird halt nichts gemacht, wenn er auf ok klickt sollen alle vorher angelegten Updatestrings hintereinander in die Datenbank geschrieben werden. Die Strings stehen in einem Array das seinen index jedesmal um eins erhöht und werden dann
in einer schleife durchgelaufen und so sollen eben die updates mit stmt.executeUpdate( String sqlQuery(i) ) eingetragen werden. kann mir wer dabei helfen, am besten mit beispielcode denn das was ich bis jetzt habe geht so nicht Kann mir wer dabei helfen?

Code:
int i = 0;
public void actionPerformed(ActionEvent e)
{	
	Object quelle = e.getSource();
	String namen = name.getText();
	String identifikation = id.getText();
    if(quelle instanceof JButton)
    {  
        if(e.getActionCommand().equals("Anlegen"))
        {
        String inhalte[] = new String[4];	
        inhalte[0] = (String)(id.getText());
        inhalte[1] = (String)(name.getText());
        inhalte[2] = (String)(dauer.getText());
        inhalte[3] = (String)(alter.getText());
        model.addRow(inhalte);
sqlQuery(i) = "INSERT INTO Film VALUES (" +Integer.parseInt(identifikation)+", '"+namen +"', "+Integer.parseInt(dauer.getText())+", "+Integer.parseInt(alter.getText())+");";
i++;
System.out.println("ButtonAction: "+e.getActionCommand());
                                }
			else if(e.getActionCommand().equals("Ändern"))
			{
				if(table.getSelectedRows() != null & table.getSelectedColumns() != null)
	        	                                {
if(table.getSelectedColumn() == 0 | table.getSelectedColumn() == 1 | table.getSelectedColumn() == 2 | table.getSelectedColumn() == 3)
					{
						for(int m = 0; m < table.getRowCount(); m++)
						{
if(table.isCellSelected(m,0) == true | table.isCellSelected(m,1) == true | table.isCellSelected(m,2) == true | table.isCellSelected(m,3) == true)
							{
							String werteid = id.getText();	
							String wertename = name.getText();
							String wertedauer = dauer.getText();
							String wertealter = alter.getText();
							table.setValueAt(werteid, m, 0); 	
							table.setValueAt(wertename, m, 1);
							table.setValueAt(wertedauer, m, 2);
							table.setValueAt(wertealter, m, 3);
							}
						}
					} 			
	    		                }
sqlQuery(i) = "UPDATE Film SET Filmname = '"+namen +"', Dauer = "+Integer.parseInt(dauer.getText())+", Altersbeschränkung = "+Integer.parseInt(alter.getText())+" WHERE ID = " +Integer.parseInt(identifikation)+";";
i++;		
System.out.println("ButtonAction: "+e.getActionCommand());
                                }
    			else if(e.getActionCommand().equals("Löschen"))
    			{
    				if(table.getSelectedRows() != null & table.getSelectedColumns() != null)
    				{
    					for(int n = 0; n < table.getRowCount(); n++)
    					{
    					if(table.getSelectedRow() == n)	
    				    	{ 
    				                model.removeRow(n);
    					}
    				}
sqlQuery(i) = "DELETE FROM Film WHERE ID = " +Integer.parseInt(identifikation)+";";
i++;
System.out.println("ButtonAction: "+e.getActionCommand());
    				}
    			}	
else if(e.getActionCommand().equals("OK") )
{
Statement stmt;
Connection con = null;
String url = "jdbc:odbc:Datenbank";
	
try
	{	
	Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );
	}
	catch( ClassNotFoundException event )
	{	
	System.out.println ( "Fehler bei ODBC-JDBC Treiber Initialisierung" + event );
	return;
	}	
		    
	try
		{
                                con = DriverManager.getConnection( url,"User","Password" );
		stmt = con.createStatement();
                                    for( int s = 0; s < i; s++)
                                    {
		    stmt.executeQuery( sqlQuery(s) );
                                    }
		stmt.close();
		}
  		catch( SQLException event)
		{
		System.out.println( "Fehler bei Tabellenabfrage " + event);	
		return;
		}	
finally
{
      	try
      	{
      	if ( con != null )
        {
        con.close();
      	}
      	}
      	catch ( SQLException event ) {}
    	}	
    	System.out.println("ButtonAction: "+e.getActionCommand());
                            }
	}
}
 

Fridolin

Bekanntes Mitglied
stmt.executeUpdate( sqlQuery(s) )
hab mich verschrieben

Jemand hat mir auch gesagt ich muss das mit Beginn Transaction und Commit Transaction/Rollback Transaction machen, ihr könnt hier auch ruhig eure Lösungen oder Ansätze hinein schreiben wenn ihr wollt
na kommts ihr seids das beste deutschsprachige java-forum hab ich irgendwo gehört
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
OnDemand Daten auf mehrere Tabellen aufteilen oder Spalten nutzen Datenbankprogrammierung 2
J Mehrere WHERE Werte benutzen Datenbankprogrammierung 2
G ID zuweisung eines TerminKalenders (mehrere Kalender) Datenbankprogrammierung 8
K Mehrere Benutzer Datenbankprogrammierung 6
D JPQL- Query über mehrere Tabellen Datenbankprogrammierung 7
O HSQLDB Eine Entität, mehrere Tabellen Datenbankprogrammierung 8
S Abfrage von Gruppentickets(Mehrere Resorts an einem Tag) Datenbankprogrammierung 1
E Mehrere Tabellenspalten mit INNER JOIN verknüpfen Datenbankprogrammierung 1
M MySQL Insert über mehrere Tabellen Datenbankprogrammierung 7
Androbin [Serializing] Mehrere Objekte in einer einzigen Datei speichern Datenbankprogrammierung 1
S MySQL Abfrage über mehrere Tabellen + Einträge werden überschrieben Datenbankprogrammierung 1
S HSQLDB Mehrere PreparedStatements ausführen Datenbankprogrammierung 3
I MySQL Vergleich über mehrere Tabellen! Join? Datenbankprogrammierung 6
J Mehrere Inserts bei Fehlschlag abbrechen Datenbankprogrammierung 2
P Mit Hibernate mehrere Datensätze löschen Datenbankprogrammierung 7
F [SQLite] Mehrere Datensätze einfügen Datenbankprogrammierung 12
M DB: Mehrere Zeilen in einer Zeile zusammenführen Datenbankprogrammierung 10
D Frage zu INSERTS über mehrere Datenbanktabellen Datenbankprogrammierung 3
U Nur den ersten Datensatz löschen wenn mehrere gleiche da sind Datenbankprogrammierung 2
G JOIN Abfrage über mehrere Tabellen Datenbankprogrammierung 15
G SQL Abfrage über mehrere Tabellen Datenbankprogrammierung 28
O eine Tabelle hat mehrere PrimKey mit dem selben Wert Datenbankprogrammierung 9
T Theoriefrage : mehrere User vs gleichen Datensatz Datenbankprogrammierung 4
multiholle SQL Querry über mehrere Spalten Datenbankprogrammierung 12
N mehrere Abfragen nacheinander wie mit MS Access mit JAVA Datenbankprogrammierung 3
O Mittelwert über mehrere Zeilen Datenbankprogrammierung 11
G Mehrere Tabellen abfragen Datenbankprogrammierung 7
D mehrere Datensätze in ein Listenfeld Datenbankprogrammierung 2
T JAVA JDBC mehrere Anfragen direkt hintereinander ausführen Datenbankprogrammierung 2
S Select über mehrere Datenbanksysteme Datenbankprogrammierung 14
M Mehrere Tabellen zusammenführen Datenbankprogrammierung 4
W Prepared Statement mehrere Zeichenketten Datenbankprogrammierung 4
F Mehrere unterschiedliche ResultSets Datenbankprogrammierung 7
P [Hibernate] Mehrere Keys in einem <set> Datenbankprogrammierung 11
G Insert-anweisung mehrere Varianten eine geht Datenbankprogrammierung 2
N mehrere tables hintereinander Datenbankprogrammierung 4
W Nur ein Datensatz wird angezeigt, obwohl mehrere existieren Datenbankprogrammierung 7
N Mehrere Abfragen gleichzeitig - was passiert da? Datenbankprogrammierung 6
L mehrere Abfragen mit einem Statement!? Datenbankprogrammierung 5
M Mehrere ResultSets gleichzeitig verwenden Datenbankprogrammierung 3
L Mehrere SQL-Statements gleichzeitig!? Datenbankprogrammierung 5
E Tabellen nacheinander auslesen Datenbankprogrammierung 10

Ähnliche Java Themen

Neue Themen


Oben