sql >> Databasteknik >  >> RDS >> Mysql

Stöder någon JDBC-drivrutin LOAD DATA INFILE sql-kommandot?

Följande kommer att fungera genom JDBC. Observera att för att använda LOAD DATA INFILE du behöver superanvändarbehörighet. Vilket du inte behöver för LOAD DATA LOCAL INFILE

Connection con = DriverManager.getConnection("jdbc:mysql://localhost/foobar", "root", "password");
Statement stmt = con.createStatement();
String sql = 
    "load data infile 'c:/temp/some_data.txt' \n" +
    "   replace \n" +
    "   into table prd \n" +
    "   columns terminated by '\\t' \n" +
    "   ignore 1 lines";
stmt.execute(sql);

Om du använder LOAD DATA INFILE filplatsen är baserad på serverns filsystem! Om du använder en lokal fil så är den uppenbarligen baserad på klientens filsystem.



  1. uppdatera flera rader med limit i mysql?

  2. SQL Server - brist på NATURAL JOIN / x JOIN y USING(fält)

  3. MySQL, Kontrollera om det finns en kolumn i en tabell med SQL

  4. MySQL Workbench:Kan inte ansluta till MySQL-servern på 127.0.0.1' (10061) fel