MySQL CSV IMPORT

baykara

Mitglied
Hallo Forum Mitglieder, ich bin neu unter euch. Danke an Admin für die Annahme!

Hoffe allen geht es gut.

Vorab bin kein Experte wenn es um SQL geht. Aber das nötigste habe ich mir bei gebracht und erfolgreich auch eingesetzt. Grade bin ich dabei Desktopanwendung
zu entwickeln (kann neue Datenbank anlegen neu Tabelle anlegen oder updaten usw. alles funktioniert wunder bar. nur habe das Problem das ich kein CSV Format importieren kann. Exportieren kein Problem. Zum Test zwecken habe ich das exportierte direkt phpmyadmin CSV Format importiert kein Problem gehabt. kann über mein Methode nicht importieren bekomme Syntax Fehler.


Code:
Syntax Fehler (FEHLER : 42000 und getMess -> Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei ''c:\ARTIKEL_CSV_ISS_MYSQL\artikel.csv' INTO TABLE artikel FIELDS TERMINATED BY '' in Zeile 1)

Handbuch habe ich durch gelesen meine das ich das Syntax Richtig eingesetzt habe.
und Treiber ist mysql-connector-java-5.1.47.jar


kod:

Java:
public static void CsVImport()  {
    String importFile ="LOAD DATA LOCAL INFILE '0' 'c:\\ARTIKEL_CSV_ISS_MYSQL\\artikel.csv'"+
            "INTO TABLE artikel  FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\r\n'   ";
    Connection connection = null;
    connection =communicationSQL.getConnection();
    Statement statementFile = null;
    ResultSet resultSet = null;

    if(connection != null){

        try {
            statementFile = connection.createStatement();
            statementFile.execute(importFile);
            System.out.println(importFile);
            System.out.println(statementFile.getResultSet());
            resultSet = statementFile.getResultSet();
            while (resultSet.next()){
                System.out.println(resultSet.getString("artikelid"));
                System.out.println(""+resultSet.getString("artikelad"));
                System.out.println(""+resultSet.getString("barkod"));
            }

            statementFile.close();
            //statementImport.close();
            resultSet.close();
            connection.close();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
            System.out.println("FEHLER : " + throwables.getSQLState() +" und getMess -> "+ throwables.getMessage());
        }


    }
}
Im GOOGLE habe ich nichts gefunden. Kann mir einer Direkt helfen wenn nicht zu minderst website wo ich mich schlau machen kann.

Vorab Danke.!
 
Zuletzt bearbeitet von einem Moderator:

krgewb

Top Contributor
Bitte immer in code-Tags posten.
Java:
public static void CsVImport() {
    String importFile = "LOAD DATA LOCAL INFILE '0' 'c:\\ARTIKEL_CSV_ISS_MYSQL\\artikel.csv'" + "INTO TABLE artikel FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\r\n' ";
    Connection connection = null;
    connection = communicationSQL.getConnection();
    Statement statementFile = null;
    ResultSet resultSet = null;

    if (connection != null) {

        try {
            statementFile = connection.createStatement();
            statementFile.execute(importFile);
            System.out.println(importFile);
            System.out.println(statementFile.getResultSet());
            resultSet = statementFile.getResultSet();

            while (resultSet.next()) {
                System.out.println(resultSet.getString("artikelid"));
                System.out.println("" + resultSet.getString("artikelad"));
                System.out.println("" + resultSet.getString("barkod"));
            }

            statementFile.close();
            // statementImport.close();
            resultSet.close();
            connection.close();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
            System.out.println("FEHLER : " + throwables.getSQLState() + " und getMess -> " + throwables.getMessage());
        }
    }
}
 

baykara

Mitglied
Bitte immer in code-Tags posten.
Java:
public static void CsVImport() {
    String importFile = "LOAD DATA LOCAL INFILE '0' 'c:\\ARTIKEL_CSV_ISS_MYSQL\\artikel.csv'" + "INTO TABLE artikel FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\r\n' ";
    Connection connection = null;
    connection = communicationSQL.getConnection();
    Statement statementFile = null;
    ResultSet resultSet = null;

    if (connection != null) {

        try {
            statementFile = connection.createStatement();
            statementFile.execute(importFile);
            System.out.println(importFile);
            System.out.println(statementFile.getResultSet());
            resultSet = statementFile.getResultSet();

            while (resultSet.next()) {
                System.out.println(resultSet.getString("artikelid"));
                System.out.println("" + resultSet.getString("artikelad"));
                System.out.println("" + resultSet.getString("barkod"));
            }

            statementFile.close();
            // statementImport.close();
            resultSet.close();
            connection.close();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
            System.out.println("FEHLER : " + throwables.getSQLState() + " und getMess -> " + throwables.getMessage());
        }
    }
}
OK danke
 

baykara

Mitglied
Gem. https://dev.mysql.com/doc/refman/5.7/en/load-data.html#load-data-input-file sind unter Windows Pfade mit zwei Backslashes oder mit Slash anzugeben. Dabei ist zu beachten, dass ein Backslash in einem Java-String-Literal selbst mit einem Backslash zu escapen ist, d. h. im Quelltext wäre "C:\\\\ARTIKEL_CSV_ISS_MYSQL\\\\artikel.csv" zu schreiben. Oder man macht sich das Leben leichter und verwendet "C:/ARTIKEL_CSV_ISS_MYSQL/artikel.csv".
Guten Morgen mihe7 Danke für dein Antwort "C:/ARTIKEL_CSV_ISS_MYSQL/artikel.csv". Das Klappt
 

Ähnliche Java Themen


Oben