Schrift
[thread]3494[/thread]

Postgres ALTER TABLE?



<< >> 5 Einträge, 1 Seite
Andreas
 2004-08-05 11:43
#32533 #32533
User since
2003-09-24
111 Artikel
BenutzerIn
[default_avatar]
HI an alle,

gibt es in Postgres eine Möglichkeit eine Spalte zu änder,
ich sollte eine bestimmte Spalte von VARCHAR(30) auf VARCHAR(40) setzten.

Unter der Doku find ich nicht treffendes.

Hat mir jemand von euch einen Tip wie ich das am besten anstelle?

Danke schon mal

Andreas
pq
 2004-08-05 11:54
#32534 #32534
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
also wenn ich danach google, finde ich schon einiges. hast du es denn schonmal
versucht und gab es eine fehlermeldung? wenn alter table unter postgres
funktioniert, wie ich annehme, dann ist es die standard-syntax.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Andreas
 2004-08-05 11:57
#32535 #32535
User since
2003-09-24
111 Artikel
BenutzerIn
[default_avatar]
Und wie lautet der?
pq
 2004-08-05 12:29
#32536 #32536
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
also den typ eines feldes zu ändern, geht wohl nicht so leicht (aber das
scheint nichts mit postgres zu tun zu haben, das ist allgemein so), aber
du kannst ja folgendes tun:
alter table t add column new VARCHAR(40);
update t set new = old;
alter table t drop column old;
alter table t rename column new to old;
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
foobar
 2004-08-05 12:36
#32537 #32537
User since
2003-08-04
69 Artikel
BenutzerIn
[default_avatar]
[quote=pq,05.08.2004, 10:29]also den typ eines feldes zu ändern, geht wohl nicht so leicht (aber das
scheint nichts mit postgres zu tun zu haben, das ist allgemein so), aber
du kannst ja folgendes tun:
alter table t add column new VARCHAR(40);
update t set new = old;
alter table t drop column old;
alter table t rename column new to old;
[/quote]
In Mysql ist das ohne weiteres Möglich:
[sql]ALTER TABLE tabelle
MODIFY spalte varchar(40)
[/sql]
The three chief virtues of a programmer are: Laziness, Impatience and Hubris
[Larry Wall]
<< >> 5 Einträge, 1 Seite



View all threads created 2004-08-05 11:43.