Roba da /dev/null... Ovvero: delirii su vita, informatica ed altro

Visualizzazione post con etichetta mysql. Mostra tutti i post
Visualizzazione post con etichetta mysql. Mostra tutti i post

lunedì 5 marzo 2012

Un classico?

Ovviamente il giorno dopo che scrivo del "nuovo" blog e del fatto che devo trovare il tempo di spostare qui l'archivio succede che mi ammalo... :p E di lunedì, pure.

Update: A quanto pare, il demone mysqld sul vecchio server ama riavviarsi ogni 5 secondi e i dati nel database del vecchio blog sono "fermi" al 2009... Dovrei controllare il dump mysql nel mio backup.

State alla larga da 110mb.com!

venerdì 22 ottobre 2010

Mysql in CSV

Per aggiungere i nomi delle varie colonne al file csv:
mysql -uuser -p -s -e 'DESCRIBE table' database | tail -n +1 | awk '{ printf($1",")}' | head -c -1 > nomefile.csv

Per esportare in csv un database:
echo "SELECT * FROM table LIMIT 0,999999999; " | mysql -uuser -p database | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' >> nomefile.csv

Un ringraziamento va a http://www.commandlinefu.com che mi ha evitato di usare la sintassi "SELECT [*|tuononno,tuanonna,ecc] INTO OUTFILE..." che, onestamente, era terribile e convoluta e se non ti ricordi da solo che può scrivere SOLO dentro la $tempdir impostata in my.cnf non te lo viene di certo a dire di suo.

venerdì 31 ottobre 2008

Mysql... aaarrrgghhh

Hai in mano un cognome e un id numerico.

Devi fare due pagine diverse.

Una con i records che hanno il cognome (in colonna A) e l'id numerico in UNA delle 7 colonne (1,...,7). Facile. Infatti funge.

Un'altra con i records che contengono il cognome (in colonna A) ma NON contengano l'id numerico in NESSUNA delle 7 colonne... Facile???

Cor cazzo. Molto cor cazzo.

Se avete proposte che NON siano del genere "select * from $table where `columnA` like '%$cognome%' AND (`col1` not like '%$id%' AND [...] AND `col7` not like '%$id%')", lieta di ascoltarle.

Ho già provato con "!=", "<>", e anche pure con "<=>", ma senza molto successo...

Update: Ho risolto con una query del tipo "select * from $table where `columnA` like '%$cognome%' AND (`col1` != '$id' OR `col1` IS NULL) AND [...] AND (`col7` !='$id' OR `col7` IS NULL)".

Bastava dormirci su un po' sopra...