Newsgroup: it.comp.software.database
Titolo: [MySQL] Spostare posizione campi

Vi viene in mente qualcosa meno *merdoso* che fare:
ALTER TABLE tabella ADD CAMPOx_TEMP smallint(4) unsigned AFTER CAMPOy;
UPDATE tabella SET CAMPOx_TEMP = CAMPOz;
ALTER TABLE tabella DROP CAMPOz;
ALTER TABLE tabella CHANGE CAMPOx_TEMP CAMPOz smallint(4) unsigned;
(il tutto moltimplicato per un numero n di campi)
??
'tabella' è sotto MySQL 3.22.32 e non posso upgradare MySQL.
Questa vecchia versione non supporta la sintassi
MODIFY [COLUMN] create_definition [FIRST | AFTER column_name]
..Intanto mi porto avanti con il lavoro inframezzando
query script e bestemmie siciliane...
Grazie a tutti.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Vi viene in mente qualcosa meno *merdoso* che fare:
create table nuovatabella (
	<i campi nell'ordine che ti pare
);
insert into nuovatabella (campi...) select (campi...) from vecchiatabella;
E poi rinomini la tabella... ma che te frega se sono in ordine diverso?
Davide

 E poi rinomini la tabella... ma che te frega se sono in ordine diverso?
Ehmmm... scusate dimenticavo:
Devo importare un .csv in cui i campi sono stati
modificati/inseriti/spostati (ovviamente tocca a me capire in che modo, da
cui buona parte delle bestemmie).
Per darti un'idea di quanto *ho peccato*, la mia tabellona ha 249 campi, e
il tracciato mi è stato spedito separatamente in un documento di word
(!!!) mentre il .csv non contiene l'intestazione con i campi (SEMPRE SIA
LODATO).
Cmq grazie
L'idea di una nuova tabella potrebbe dimostrarsi utile.
Per ora provo a scrivere uno script che mi sputi fuori il mio bel
cambiamondo.sql, in modo da automatizzare un po' la cosa...
[OT]
Tremo! Non ho mai usato bash (solo php)...
A proposito.. come si definiscono/accedono degli array associativi in
bash??


 cambiamondo.sql, in modo da automatizzare un po' la cosa...
Scaricati dbi da 
http://www.soft-land.org/archivio/dbi.zip
E' un'importatore di database scritto in java, dovrebbe fare al
caso tuo.
Davide

 caso tuo.
Grazie !
Ho dato un'occhiata ai sorgenti e ci ho trovato degli spunti interessanti
per scrivere un parser di tracciati AS400->SQL. 
Pensandoci bene,
una soluzione lungimirante č:
1) farmi spedire direttamente i tracciati AS400 + CommaSeparetedVal.zip
2) *far* tradurre il tracciato al mio schiavo elettronico;
3) creare la nuova tabella;
4) backuppare la vecchia;
5) mysqlimport-azione +
6) ridenomin-azione;
7) [giocare a tetris|aperitivo con gli amici] per il resto del tempo.
Se il 2) vi sembra una vaccata, vi prego di avvisarmi per tempo; perché
sul tema AS400 la mia conoscenza č NULL e potrei rompermi le corna. 
Il 7) me lo assegno come premio unatantum nel caso di successo.


> per scrivere un parser di tracciati AS400->SQL. 
Prima vaccata.
Come immaginavo, AS400 è il nome di una architettura IBM, mentre il suo
DBMS si chiama DB2. Eppure al telefono:
"Immagino che voi usiate DB2..."
mi rispondono:
"AS400!".
"Posso avere un tracciato SQL?"
"Noi non lavoriamo con SQL".
Ostruzionismo comprensibile, in effetti era sera tardi...
Vabbè, da bravo ignorantello presuntuoso quale sono, sfodero la carta
dell'ambizione.
Voglio imparare il linguaggio di strutturazione dei dati di DB2 su AS400
(ne avrà pure uno, chiamalo come vuoi!).
Qualcuno ha dei suggerimenti sui link da seguire? 
Grazie anticipate.


 Qualcuno ha dei suggerimenti sui link da seguire? 
Domanda alla IBM, occhio che gli AS vanno dai 7 milioni ai 7 miliardi
di vecchie lire...
Davide