da character (99) a character (1) e conseguente problema in v.patch

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

da character (99) a character (1) e conseguente problema in v.patch

marco.donnini@tiscali.it
Ciao a tutti/e

ho delle mappe che vorrei unire conservando le colonne
attributi (usando quindi "v.patch" settando “copy also the attribute
table”).
Ho delle mappe che hanno in attributo:
cat integer (20)

LITO_NEW character (99)

una delle mie mappe però presenta (non so per
quale motivo)
cat integer (20)
LITO_NEW character (1)

e di conseguenza
non posso lanciare "v.patch" settando “copy also the attribute table”.


decido quindi:
(1) di lanciare "v.db.addcol" e creare una colonna
LITO_NEW_ varchar (99)
(2) con "v.db.update" copio gli attributi di
LITO_NEW in LITO_NEW_
(3) "g.gui gui=wxpython" -> carico in GRASS la
mappa -> tasto dx -> propietà -> gestione delle tabelle -> seleziona
LITO_NEW -> tasto dx -> cancella la colonna selezionata...
vedo che la
mia LITO_NEW_ character (99) mi diventa LITO_NEW_ character (1)


[l'idea era quella di creare nuovamente una LITO_NEW character (99),
con "v.db.update" copiare nuovamente gli attributi ed elminare
LITO_NEW_, non so se mi sono spiegato...]

che cosa non ho considerato
nelle mie operazioni??
cosa posso fare??

grazie mille!!
marco


Invita i tuoi amici e Tiscali ti premia! Il consiglio di un amico vale più di uno spot in TV.Per ogni nuovo abbonato 30 € di premio per te e per lui! Un amico al mese e parli e navighisempre gratis: http://freelosophy.tiscali.it/
_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
Non inviate messaggi commerciali.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.
584 iscritti al 7.4.2012
Reply | Threaded
Open this post in threaded view
|

Re: da character (99) a character (1) e conseguente problema in v.patch

Markus Neteler
Ciao Marco,

2012/5/9 [hidden email] <[hidden email]>:
> Ciao a tutti/e
>
> ho delle mappe che vorrei unire conservando le colonne
> attributi (usando quindi "v.patch" settando “copy also the attribute
> table”).

Quale versione di GRASS su quale OS usi?

> Ho delle mappe che hanno in attributo:
> cat integer (20)
> LITO_NEW character (99)

che dice

v.db.connect -p la_tua_mappa
?

> una delle mie mappe però presenta (non so per
> quale motivo)
> cat integer (20)
> LITO_NEW character (1)

v.info -h questa_mappa

ti dice come è stata creata (per capire il 1 byte length).

> e di conseguenza
> non posso lanciare "v.patch" settando “copy also the attribute table”.
>
> decido quindi:
> (1) di lanciare "v.db.addcol" e creare una colonna
> LITO_NEW_ varchar (99)
> (2) con "v.db.update" copio gli attributi di
> LITO_NEW in LITO_NEW_
> (3) "g.gui gui=wxpython" -> carico in GRASS la
> mappa -> tasto dx -> propietà -> gestione delle tabelle -> seleziona
> LITO_NEW -> tasto dx -> cancella la colonna selezionata...
> vedo che la
> mia LITO_NEW_ character (99) mi diventa LITO_NEW_ character (1)
>
>
> [l'idea era quella di creare nuovamente una LITO_NEW character (99),
> con "v.db.update" copiare nuovamente gli attributi ed elminare
> LITO_NEW_, non so se mi sono spiegato...]

Spiegato benissimo... non dovrebbe ridurre su 1 byte. Mi puzza di SQLite
driver?

> che cosa non ho considerato
> nelle mie operazioni??
> cosa posso fare??

... darci le risposte sulle domande di sopra.
Poi speriamo di avere una risposta.

ciao
Markus
_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
Non inviate messaggi commerciali.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.
584 iscritti al 7.4.2012
Reply | Threaded
Open this post in threaded view
|

Re: da character (99) a character (1) e conseguente problema in v.patch

Marco Curreli
In reply to this post by marco.donnini@tiscali.it
On 10:52 Wed 09 May     , [hidden email] wrote:

> Ho delle mappe che hanno in attributo:
> cat integer (20)
>
> LITO_NEW character (99)
>
> una delle mie mappe però presenta (non so per
> quale motivo)
> cat integer (20)
> LITO_NEW character (1)
>
> decido quindi:
> (1) di lanciare "v.db.addcol" e creare una colonna
> LITO_NEW_ varchar (99)
> (2) con "v.db.update" copio gli attributi di
> LITO_NEW in LITO_NEW_
> (3) "g.gui gui=wxpython" -> carico in GRASS la
> mappa -> tasto dx -> propietà -> gestione delle tabelle -> seleziona
> LITO_NEW -> tasto dx -> cancella la colonna selezionata...
> vedo che la
> mia LITO_NEW_ character (99) mi diventa LITO_NEW_ character (1)
>
>
> [l'idea era quella di creare nuovamente una LITO_NEW character (99),
> con "v.db.update" copiare nuovamente gli attributi ed elminare
> LITO_NEW_, non so se mi sono spiegato...]
>
Hai provato a usare db.execute?
db.execute input=modificatab.sql driver=sqlite

#######################
# file modificatab.sql

ALTER TABLE Geo_Svizzera_etc ADD COLUMN LITO_NEW_ varchar(99);

UPDATE Geo_Svizzera_etc SET LITO_NEW_ = LITO_NEW ;

##################
controlli se è tutto a posto ed elimini la colonna con db.dropcol

Ciao,
  Marco

_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
Non inviate messaggi commerciali.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.
584 iscritti al 7.4.2012