Обсуждение: CLUSTER and SERAIL type

Поиск
Список
Период
Сортировка

CLUSTER and SERAIL type

От
Mattias Norlander
Дата:
Reading the documentation on CLUSTER I see that

"all grant permissions and other indexes are lost when clustering is
performed."

What does this really mean? I understand that all indexes and
permissions are gone, but are there other impacts as well?

Seems so to me that this also affects columns of type SERIAL and
columns that defaults to a nextval('sequence'):

--- X ---

[PostgreSQL 6.5.3 on i386-unknown-freebsd3.1, compiled by gcc 2.7.2.1]
...
test=> create table foo (id serial,name text);
NOTICE:  CREATE TABLE will create implicit sequence 'foo_id_seq' for SERIAL column 'foo.id'
NOTICE:  CREATE TABLE/UNIQUE will create implicit index 'foo_id_key' for table 'foo'
CREATE
test=> insert into foo(name) values('blah');
INSERT 25021983 1
test=> insert into foo(name) values('bleh');
INSERT 25021984 1
test=> insert into foo(name) values('bloh');
INSERT 25021985 1
test=> cluster foo_id_key on foo;
CLUSTER
test=> insert into foo(name) values('bluh');
INSERT 25021999 1
test=> select * from foo;
id|name
--+----
 1|blah
 2|bleh
 3|bloh
  |bluh

--- X ---

Grateful for explanations [and|or] workarounds !


--
Mattias Norlander
mattias@umc.se




Re: [ADMIN] CLUSTER and SERAIL type

От
Bruce Momjian
Дата:
So it seems it drops column defaults too.  Yikes.  I will add to manual
page.  Peter E. any chance of hacking this as part of DROP COLUMN?

> Reading the documentation on CLUSTER I see that
>
> "all grant permissions and other indexes are lost when clustering is
> performed."
>
> What does this really mean? I understand that all indexes and
> permissions are gone, but are there other impacts as well?
>
> Seems so to me that this also affects columns of type SERIAL and
> columns that defaults to a nextval('sequence'):
>
> --- X ---
>
> [PostgreSQL 6.5.3 on i386-unknown-freebsd3.1, compiled by gcc 2.7.2.1]
> ...
> test=> create table foo (id serial,name text);
> NOTICE:  CREATE TABLE will create implicit sequence 'foo_id_seq' for SERIAL column 'foo.id'
> NOTICE:  CREATE TABLE/UNIQUE will create implicit index 'foo_id_key' for table 'foo'
> CREATE
> test=> insert into foo(name) values('blah');
> INSERT 25021983 1
> test=> insert into foo(name) values('bleh');
> INSERT 25021984 1
> test=> insert into foo(name) values('bloh');
> INSERT 25021985 1
> test=> cluster foo_id_key on foo;
> CLUSTER
> test=> insert into foo(name) values('bluh');
> INSERT 25021999 1
> test=> select * from foo;
> id|name
> --+----
>  1|blah
>  2|bleh
>  3|bloh
>   |bluh
>
> --- X ---
>
> Grateful for explanations [and|or] workarounds !
>
>
> --
> Mattias Norlander
> mattias@umc.se
>
>
>
>
>
> ************
>
>


--
  Bruce Momjian                        |  http://www.op.net/~candle
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Unlimited data or variable

От
"J Carlos Morales Duarte."
Дата:
Hi!

What kind of data ( int, char, var,... etc) in postgres its unlimited of
chars???

Thankx.