Vinnaren i pepparkakshustävlingen!
2008-08-11, 14:17
  #1
Medlem
hej hej, när jag använder denna query:

Kod:
LOAD DATA LOCAL INFILE '/var/www/html/index.php' INTO TABLE test;
så kommer alla rader som inte börjar med en tab med. men eftersom det är en phpfil så börjar nästan alla rader med en/två/tre tabbar. läste vidare i dokumentationen och såg att man kunna göra såhär:
Kod:
LOAD DATA LOCAL INFILE '/var/www/html/index.php' INTO TABLE test LINES STARTING BY '\t';
då kommer alla rader som börjar med EN tab med.

nu undrar jag, finns det något sett att få med alla rader i en query? det skulle kunna se ut så här:
Kod:
LOAD DATA LOCAL INFILE '/var/www/html/index.php' INTO TABLE test LINES STARTING BY '' OR '\t' OR '\t\t' OR '\t\t\t';
(detta funkar inte, ska bara visa hur jag vill ungefär)

tack!
Citera
2008-08-11, 22:12
  #2
Moderator
Protons avatar
En regexp borde kunna ordna biffen åt dig här. Vet dock inte hur den skulle se ut, men en iaf som tar med allt som börjar på icke-ascii-tecken borde ju fixa det hela?
Citera
2008-08-12, 00:25
  #3
Medlem
Citat:
Ursprungligen postat av Proton
En regexp borde kunna ordna biffen åt dig här. Vet dock inte hur den skulle se ut, men en iaf som tar med allt som börjar på icke-ascii-tecken borde ju fixa det hela?
hur kombinerar man regexp och load data local infile?
Citera
2008-08-14, 08:05
  #4
Medlem
Cisco9s avatar
Jag har inte testat, men borde inte detta fungera?

Kod:
LOAD DATA LOCAL INFILE '/var/www/html/index.php' INTO TABLE test LINES STARTING BY '' OR "\t%" 
Citera
2008-08-14, 14:43
  #5
Medlem
Citat:
Ursprungligen postat av Cisco9
Jag har inte testat, men borde inte detta fungera?

Kod:
LOAD DATA LOCAL INFILE '/var/www/html/index.php' INTO TABLE test LINES STARTING BY '' OR "\t%" 
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 'OR "\t%"' at line 1

Citera
2008-08-14, 17:02
  #6
Medlem
gadzooxs avatar
Varför vill du ens ha phpkod i databasen?
Citera
2008-08-14, 17:21
  #7
Medlem
Citat:
Ursprungligen postat av gadzoox
Varför vill du ens ha phpkod i databasen?
för att jag har kommit in i phpmyadmin på en sida och vill kolla i deras kod..
Citera
2008-08-14, 20:14
  #8
Medlem
gadzooxs avatar

Låter märkligt att tabbar inte kommer med... Inte så att default är typ FIELDS TERMINATED BY '\t' eller nåt?

Annars... kan du inte ta det bakvägen? Bygg ett eget phpscript i en tabell och kör SELECT INTO OUTFILE, och håll tummarna för att du har skrivrättigheter i webrooten


Edit: Så var det, ja...
Citat:
If you specify no FIELDS clause, the defaults are the same as if you had written this:
FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\'
[...]

In other words, the defaults cause LOAD DATA INFILE to act as follows when reading input:
* Look for line boundaries at newlines.
* Do not skip over any line prefix.
* Break lines into fields at tabs.
Testa FIELDS TERMINATED BY 'Ž' eller nåt annat cptecken som aldrig förekommer....
__________________
Senast redigerad av gadzoox 2008-08-14 kl. 20:17.
Citera
2008-08-15, 16:18
  #9
Medlem
Citat:
Ursprungligen postat av gadzoox
FIELDS TERMINATED BY 'Ž' eller nåt annat cptecken som aldrig förekommer....
JAG ÄLSKAR DIG!!
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback