Tworzenie użytkownika:
ali@ali:~$ sudo su [sudo] password for ali: root@ali:/home/ali# su - postgres postgres@ali:~$ createuser ali Shall the new role be a superuser? (y/n) n Shall the new role be allowed to create databases? (y/n) y Shall the new role be allowed to create more new roles? (y/n) y CREATE ROLE <postgres@ali:~$ postgres@ali:~$ su - ali Hasło: ali@ali:~$
Tworzenie bazy:
ali@ali:~$ psql -d template1 Welcome to psql 8.2.6, the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help with psql commands \g or terminate with semicolon to execute query \q to quit template1=> create database pracownicy with encoding='latin-2'; CREATE DATABASE template1=> \q ali@ali:~$ cd DATABASES/PRAC/ ali@ali:~/DATABASES/PRAC$ psql -d pracownicy Welcome to psql 8.2.6, the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help with psql commands \g or terminate with semicolon to execute query \q to quit pracownicy=>
Tworzenie tablic:
pracownicy=> \dt No relations found. pracownicy=> \i prac2.sql SET SET psql:prac2.sql:8: ERROR: table "prac" does not exist psql:prac2.sql:9: ERROR: table "dzial" does not exist psql:prac2.sql:20: NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "dzial_pk" for table "dzial" CREATE TABLE psql:prac2.sql:35: NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "prac_pk" for table "prac" CREATE TABLE INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 ALTER TABLE pracownicy=> \dt List of relations Schema | Name | Type | Owner --------+-------+-------+------- public | dzial | table | ali public | prac | table | ali (2 rows)
Przeglądanie bazy:
pracownicy=> select * from prac; id_prac | nazwisko | imie | data_ur | dzial | stanowisko | pobory ---------+------------+----------+------------+-------+------------+--------- 1100 | Kowal | Adam | 15/12/1989 | PD303 | robotnik | 1500.00 110 | Kowalik | Artur | 13/12/1998 | PD303 | kierownik | 1500.00 1110 | Kowalewski | Adam | 15/11/1989 | PR202 | robotnik | 3500.00 101 | Kowalczyk | Amadeusz | 17/12/1998 | PK101 | kierownik | 1000.00 1101 | Kowalski | Antoni | 15/12/1999 | PD303 | robotnik | 4500.00 1011 | Kowalowski | Alojzy | 15/11/1998 | PK101 | robotnik | 2500.00 111 | Kowalczuk | Adam | 12/11/1998 | PR202 | kierownik | 2500.00 1010 | Kawula | Alojzy | 15/11/1998 | PK101 | robotnik | 2500.00 (8 rows) pracownicy=> select * from dzial; id_dzial | nazwa | lokalizacja | kierownik ----------+-------------+-------------+----------- PD303 | Produkcyjny | Mysiecko | 110 PK101 | Projektowy | Mysieko | 101 PR202 | Promocji | Mysieoczko | 111 (3 rows) pracownicy=> \l List of databases Name | Owner | Encoding ------------+----------+---------- postgres | postgres | UTF8 pracownicy | ali | LATIN2 template0 | postgres | UTF8 template1 | postgres | UTF8 (4 rows) pracownicy=> \du List of roles Role name | Superuser | Create role | Create DB | Connections | Member of -----------+-----------+-------------+-----------+-------------+----------- ali | no | yes | yes | no limit | postgres | yes | yes | yes | no limit | (2 rows) pracownicy=> \q ali@ali:~/DATABASES/PRAC$
Skrypt w prac2.sql do pobrania: prac2.sql.tar.gz