Hoe krijg ik dit mysql-statement uitgevoerd ?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Pjotr Bee

Pjotr Bee

22/08/2013 11:02:49
Quote Anchor link
Help!, ik krijg de syntax voor dit statement niet correct.

Dit is de query:
load data infile 'c:/xampp/htdocs/phpsites/data.txt' into table jour fields terminated by ',' ENCLOSED BY '"' lines terminated by '\r\n'

Dit werkt niet (1):

$query = "load data infile ''c:/xampp/htdocs/phpsites/data.txt'' into table jour fields terminated by '','' ENCLOSED BY ''\"'' lines terminated by ''\r\n'' ";
$result = $db->query($query) ;

Dit werkt niet (2):

$file='c:/xampp/htdocs/phpsites/data.txt' ;
$enclose='"' ;
$stmt = "load data infile ? into table jour fields terminated by '','' ENCLOSED BY ? lines terminated by ''\r\n'' " ;
$stmt->execute(array($file, $enclosed)) ;
$result = $u->fetchAll(PDO::FETCH_ASSOC);

Toevoeging op 22/08/2013 11:06:36:

Zie mijn bovenstaande vraag. In voorbeeld (1) heb ik elke enkele kwoot met een extra kwoot ge-escaped, en tevens de dubbele kwoot met een backslash. In dat geval is de php-syntax in ieder geval correct.


Toevoeging op 22/08/2013 11:33:20:

Zie mijn bovenstaande vraag. De query is OK! (werkt in PhpMyAdmin). Het lukt echter niet om het in PHP uitgevoerd te krijgen zonder syntaxfouten.
 
PHP hulp

PHP hulp

24/11/2024 21:28:01
 
Lendl Verschoor

Lendl Verschoor

22/08/2013 11:36:32
Quote Anchor link
Heb het zelf even geprobeerd met de volgende code werkte het bij mij:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
LOAD DATA INFILE 'C:/Users/Administrator/Desktop/test.txt'
INTO TABLE test
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'


test.txt
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
1, a, b
2, b, c
3, c, d


Ik zie niet veel verschil in de code die je hebt geplaatst.
Wat doet ENCLOSED BY?
Hoe ziet je tabel en je bestand eruit?
 
Pjotr Bee

Pjotr Bee

22/08/2013 11:55:42
Quote Anchor link
Het probleem is niet de syntax van de query zelf, maar de manier waarop ik het in PHP probeer te krijgen.
Het eerste voorbeeld geeft bij executie als foutmelding:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'c:/xampp/htdocs/phpsites/data.txt'' into table intabel fields terminated by '','' at line 1' in C:\xampp\htdocs\phpsites\rabobank\inlezen.php:10 Stack trace: #0 C:\xampp\htdocs\phpsites\rabobank\inlezen.php(10): PDO->query('load data infil...') #1 {main} thrown in C:\xampp\htdocs\phpsites\rabobank\inlezen.php on line 10.

Line 10 is de regel "$result = $db->query($query) ;" van voorbeeld 1.
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

22/08/2013 13:18:15
Quote Anchor link
Probeer dit eens:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$query
= "LOAD DATA INFILE 'c:/xampp/htdocs/phpsites/data.txt'
     INTO TABLE intabel
     FIELDS TERMINATED BY ','
     OPTIONALLY ENCLOSED BY '\"'
     LINES TERMINTATED BY '\\r\\n'"
;
?>
Gewijzigd op 22/08/2013 13:18:40 door Ger van Steenderen
 
Pjotr Bee

Pjotr Bee

23/08/2013 08:49:10
Quote Anchor link
Zucht, dat is 'm. Dank je wel.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.