MySQL LOAD DATA INFILE -id aus dem Code und Rest aus dem File.

Dimax

Top Contributor
Guten Tag ,
Ich habe Probleme beim auslesen aus einer Datei und inserten in die Tabelle.
Meine Aufgabe ist es ,dem Client erlauben seine Daten mit dem csv-File in die Tabelle eintragen.
Das Problem :der Client kennt seine pers-id nicht,ich kenne die aber im Programm ,sitzt auf der Variable $p_id.
Wie ich verstanden habe ,gibt es im Load Infile keine where Abfrage .
Wie könnte man das so realisieren, dass die Daten aus dem File in die Zieltabelle nur unter Client p_id eingetragen werden. Unten ist meine prototype Abfrage die ich verbessern soll:
Code:
$sql="LOAD DATA INFILE '$uploadfile' INTO TABLE arbeitszeiten FIELDS TERMINATED BY ',' ".
   " LINES TERMINATED BY '\r\n'  (@datum,@kommen,@gehen,@pause) ".
"SET @datum=str_to_date(@datum, '%Y-%m-%d');";
Danke für jede Hilfe!!
 

Dimax

Top Contributor
Danke mihe7 ,wird wahrscheinlich funktionieren .Ich kann jetzt aber leider nicht prüfen, Acces denied for _User.
Habe gelesen ,dass LOAD INFILE muss irgendwo erlaubt sein.Suche grade wo mann dass einstellen kann.
 

Dimax

Top Contributor
also das Problem mit Acces lag in sql-Einstellungen. Mann muss statt load data infile so load data local infile schreiben und global erlauben SET @@GLOBAL.`local_infile` := 1; Ist zwar meiner Meinung nach ein großes Sicherheitsrisiko,aber wenn man so möchte ist möglich.
 

mihe7

Top Contributor
LOAD DATA LOCAL INFILE überträgt eine Datei des Clients zum Server und importiert diese. LOAD DATA INFILE importiert eine Datei, die sich auf dem Server befindet. Dem entsprechend sind die Pfade natürlich entweder auf den Client oder auf den Server bezogen.

Der Import funktioniert je nach Variante unterschiedlich. Mit der LOCAL-Option werden Duplikate "ignoriert" (es gibt nur eine Warnung), ohne die LOCAL-Option wird der Import abgebrochen.

Für die Version ohne LOCAL braucht der Benutzer das FILE-Privileg. Außerdem ist es abhängig von der MySQL-Variablen "secure_file_priv": gibt diese ein Verzeichnis an, muss sich die zu importierende Datei dort befinden. Dagegen gilt unabhängig davon, dass die Datei natürlich von MySQL lesbar sein muss.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L LOAD DATA INFILE mit Oracle Datenbankprogrammierung 24
K MySQL Load Data InFile Datenbankprogrammierung 7
P Wie realisiert man JDBCTemplate load als allgemein am besten? Datenbankprogrammierung 5
D Jdbc: Unable to load Driver! Datenbankprogrammierung 11
T Cast-Fehler: Spring Data exists.... boolean??? Datenbankprogrammierung 1
sonalim21 Data from one Excel workbook in Alteryx Datenbankprogrammierung 0
O HOW TO INSERT PRIMARY INTO ANOTHER TABLE AND USE IT AS FOREIGN KEY TO DISPLAY DATA IN A RELATIONSHIP Datenbankprogrammierung 3
B MySQL Data Tools Plattform - "Database Connections" findet den Treiber nicht Datenbankprogrammierung 1
zhermann Data truncation: Incorrect date value: 'null' for column Datenbankprogrammierung 31
B JDBC-Connection: Data source name too long Datenbankprogrammierung 3
E Data truncation Incorrect datetime value Datenbankprogrammierung 2
W No data found: SQL-Abfrage funktioniert nur beim Debuggen Datenbankprogrammierung 3
E falscher Befehl executeQuery() issue data Datenbankprogrammierung 12
I java.sql.SQLException: No data found Datenbankprogrammierung 3
Dragonfire Entwurfsfragen zur Anbindung an einer MySQL DB - Klassenstruktur zum Data Model Datenbankprogrammierung 5
M Mit Java Data Objects Daten in einer MySQL-Datenbank manipul Datenbankprogrammierung 9
M java.sql.SQLException: No data found Datenbankprogrammierung 9
T Problem mit Data truncation Datenbankprogrammierung 3
G Data Truncated Datenbankprogrammierung 23
R MySQL denies access to data source - java.sql.SQLException Datenbankprogrammierung 14
G NULL-data processing. Datenbankprogrammierung 11

Ähnliche Java Themen


Oben