# INSERT Befehl mit MySQL?



## stetabar (5. Mai 2005)

gibt es eine variante, mit der man geschickt ein array in die datenbk schreiben kann?
auslesen vom 9000 daten per array sind super schnell, aber das einladen dauert ewig...

vielleicht ist das problem, dass ich eine schleife um das statement habe, aber wusste nicht, 
wie ich es sonst hätte lösen sollen...

wollte halt nur mal wissen, ob es eine schnellere lösung gibt...

danke


----------



## DP (5. Mai 2005)

die schleife nur um das stmt.execute(sql); machen


----------



## stetabar (5. Mai 2005)

```
for (int y=0;y<(counter+1);y++)
      		{
      			try{ 
      		    //System.out.println("yes");
      			mysqlStatement = ("INSERT INTO `4cast_temp_5` (`ID` , `value` ) VALUES ('" + (y+1) + "', '" + value[y] + "')");
      
      			Statement s = conn.createStatement(); 
            
      			s.executeUpdate(mysqlStatement);
      			}
      			catch(Exception add2){ 

    			}
    		}
```

also so nicht, oder? *g


----------



## AlArenal (5. Mai 2005)

Nein, so nicht. Des weiteren dürfte es noch was bringen, wenn du ein PreparedStatement benutzt und nachMöglichkeit solltest du in MySQL  einen Tabellentyp wählen der Transaktionen unterstützt. Wenn du vor der Schleife die Transaktion beginnt und danach das COMMIT machst,m bzw. ROLLBACK im Fehlerfall, bringt das nochmal einiges an Speed und auch an Sicherheit.


----------



## Bleiglanz (5. Mai 2005)

jdbc batch

oder

INSERT INTO ()VALUES ()()()()()()

da gibts ne eigene syntax -> ein langer string

schau in die doku


----------



## stetabar (5. Mai 2005)

AlArenal wie ist das gemeint?

könnte mir da jemand ne variante vorschlagen bitte?!
weil das war die einzige version, die ich lauffähig bekommen habe...lol


----------



## DP (5. Mai 2005)

such mal nach preparedstatement, da findest du hier genug codebeispiele


----------



## stetabar (5. Mai 2005)

danke dp


----------

