sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #44205
Interne tabeller i Postgres
Hejsa,
Jeg har tidligere skrevet et indlæg i news:dk.edb.system.unix om nogen
kunne hjælpe med følgende problem stilling:
[Kopi af indlæg]
Jeg er igang med at lave et program som skal bruge strukturen af hvordan
en tabel er opbygget i postgres..
feks. en test tabel (mytabel)
id numeric(10)
text varchar(10)
nu er det sådan at jeg gerne vil kunne selecte typerne på attributterne
men kan ikke lige gennemskue hvordan det hænger sammen .. indtil videre
har jeg fundet ud af at en
select atttypmod,attname,relname,attrelid,atttypid from
pg_class,pg_attribute where relname='mytabel' and relfilenode=attrelid;
giver følgende:
atttypmod | attname | relname | attrelid | atttypid
-----------+-----------------+--------------+----------+----------
655364 | id | crm_activity | 1310044 | 1700 ic(10,0)
655364 | text | crm_activity | 1310044 | 1043
numeric(10,0)
men jeg kan ikke lige gennemskue hvordan man finder ud af at attribut
navn er numeric og text er varchar .. nogen der kender til ligende
projecter eller ved hvordan de interne tabeller hænger sammen ?
[/Kopi af indlæg]
Jeg har brugt weekenden til at kigge noget af sourcekoden igennem for at
finde datatyperne og har fundet dem (I pg_type.h) men det er ikke
særligt holdbart at cut`n`paste dem. For hvis udviklerne bag postgres
beslutter sig at ændre typerne kræver det noget vedligeholdelse fra min
side af ..
Det jeg ønsker er et select statement som virker på samme måde som en \d
Håber nogen kan hjælpe om ikke andet med ideer :)
/Kim
Follow ups