sql >> Database >  >> RDS >> Mysql

Is een Load DATA zonder bestand (d.w.z. in het geheugen) mogelijk voor MySQL en Java?

Het lijkt erop dat u vanaf MySQL Connector/J JDBC-stuurprogramma versie 5.1.3 en later een InputStream-referentie kunt aansluiten met behulp van com.mysql.jdbc.Statement.setLocalInfileInputStream() methode, intern in uw Java-code, om uw in het geheugen geformatteerde tekenreeks/tekst te 'pipe' naar de 'LOAD DATA INFILE'-aanroep. Dit betekent dat u niet moet een tijdelijk bestand uit het geheugen wegschrijven en opnieuw lezen. Raadpleeg:

http://dev.mysql .com/doc/refman/5.1/en/connector-j-reference-implementation-notes.html (onderaan de pagina)

Het proces wordt ook beschreven in deze post :

http://jeffrick.com/2010/03 /23/bulk-insert-in-a-mysql-database

O'reilly maakte een pdf met MySQL/ JDBC-prestatieparels , die hiernaar verwijst.

Er is ook sprake van het gebruik ervan met Hadoop (geavanceerd Java-onderwerp).

Ik hoop dat dit allemaal helpt.

Proost

Rijk



  1. Postgresql maakt geen db met "createdb" als superuser, maar geeft geen fouten uit

  2. Rij in de database invoegen met PreparedStatement

  3. MySQL:tel records van de ene tabel en werk vervolgens een andere bij

  4. Geaggregeerde zoekopdracht zonder GROUP BY