← Back to team overview

sslug-teknik team mailing list archive

Re: pgadmin3: oprette ny tabel.

 

Troels Arvin wrote:
I det følgende skal følgende forbehold nævnes: Jeg benytter en
snapshot-udgave af pgadmin, så der kan være features, der er buggy hos
mig, eller jeg kan have adgang til features, der ikke findes i pgadmin3 v.
1.02.

Jeg har installeret pgadmin3-1.0.2-1.i586.rpm.

On Tue, 13 Jul 2004 14:28:53 +0000, Jørgen Heesche wrote:

Hvordan tildeler man privilegier med pgadmin3?


Jeg kan kun gøre det på gruppevis. Sært. Men i hvertfald så
højreklikker jeg på tabel-objektet (eller evt. schema-objektet) i
objekttræet i venstre vinduesfelt og vælger "properties".

Jeg har, efter at jeg spurgte, fundet frem til at dobbeltklik på
tabelnavnet i objekttræet åbner definitionsvinduet for tabellen (det
samme som da tabellen blev oprettet, men nu indeholdende
tabeldefinitionerne). Ved at vælge fanebladet Security kan jeg definere
privilegier, men tilsyneladende kun for public. Og dog, i et tilfælde
har jeg kunnet vælge user postgres og user jph hver for sig, men hvordan
jeg gjorde kan jeg ikke huske.

jeg kunne godt tænke mig at definere multiple primary keys, f.eks.

CREATE TABLE public.atab3
(
  c1 int2 NOT NULL,
  c2 int2 NOT NULL,
  c3 int4,
  PRIMARY KEY (c1,c2)
) WITH OIDS;

Hvordan gør man det i pgadmin3?


Jeg gør som følger: Opretter tabellen med passende kolonner (og husker
at hakke af ved NOT NULL for de kolonner, der skal indgå i
primærnøglen). Derefter vælger jeg Constraints under min tabel (igen i
objekttræet i venstre vinduesfelt) og klikker på værktøjskasseknappen
i øvre del af vinduet. Nu kan jeg evt. navngive min primærnøgle (men
det er ikke krævet), og derefter vælge fanebladet "Columns". Her add'er
jeg de kolonner, der skal indgå i primærnøglen og klikker OK.

Jeg havde fundet frem til at vælge Constraints, men kunne ikke vælge 2
kolonner  til primary key, fordi jeg havde overset den lille finesse med
hak ved NOT NULL. Hvis man opretter en tabel "manuelt", f.eks. ved indtaste create-table-statementet i en fil, og derefter udfører 'psql < fil', sætter pg selv 'not null' på de kolonner, der er valgt med 'PRIMARY KEY (c1,c2)'.

Mine forsøg med pgadmin3 har først og fremmest haft til formål, at finde ud af, hvad man kan bruge pgadmin3 til. Min konklusion til nu er, at en databaseadmistrator kan bruge den til hurtigt af finde alle mulige oplysninger om databasens tilstand, men at transaktioner på databasen ofte vil være nemmere at udføre "manuelt", som antydet ovenfor.
--
Med venlig hilsen

Jørgen Heesche
mailto:heesche@xxxxxxxxxxx




Follow ups

References