it-place.net > Уроци > PostgreSQL
Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

   Рубрики
 
 
 
 

 Форуми
» SEO и оптимизация
» Всичко за PHP и Perl
» Всичко за C, C++ и .NET
» Всичко за Java и JSP
» Всичко за SQL и MySQL
» Всичко за XHTML и CSS
» Презентация на сайтове
 Въведение в PostgreSQL под Linux
  1. Въведение в PostgreSQL под Linux - I
  2. Въведение в PostgreSQL под Linux - II
  3. Въведение в PostgreSQL под Linux - III
  4. Въведение в PostgreSQL под Linux - IV
SOMNIVM
     
Автор  SOMNIVM (30.08.2006 09:09)  съобщение до автора
Погледнат  7593 пъти  добави към любими
Оценка  добави коментар
Гласове  1  изпрати на приятел
Коментари  (0)  абонирай се за PostgreSQL
    Страница 1 / 4

 



Въведение в PostgreSQL под Linux

Какво е PostgreSQL?
PostgreSQL е система за управление на релационни бази данни. Последната версия – 8 поддържа огромна част от SQL езика, даваща й изключителна гъвкавост и приложимост във всяка област. PostgreSQL може да бъде разширявана, чрез добавяне на нови типове данни, нови функции, оператори, процедурни езици... PostgreSQL е безплатна, свободна, с отворен код за всякаква употреба – лична, бизнес или академична.

Създаване на потебител
Преди да започнем работа с базите данни, трябва да създадем потребител с определени права. По подразбиране при инсталиране PostgreSQL създава потребител на системата с име postgres. Първо трябва да сменим паролата на потребителя postgres с желана от нас парола. Това става по следния начин:

somnivm@verseau:~$ sudo passwd postgres
Password:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
somnivm@verseau:~$


След това се логваме в някоя конзола като postgres със зададената от нас парола и, за да добавим потребител на системата ни за управление на базите данни пишем (вместо somnivm напишете потребителското име от което ще манипулирате базите данни):

postgres@verseau:~$ createuser somnivm -P
Enter password for new user:
Enter it again:
Shall the new user be allowed to create databases? (y/n) y
Shall the new user be allowed to create more new users? (y/n) y
CREATE USER
postgres@verseau:~$


Вече имаме потребител, който може да създава бази данни и да добавя нови потребители.

Създаване на база данни:
Сега ще видим как се създава база данни в PostgreSQL. Самата база данни не е нищо повече от един контейнер в който след това слагаме клетките (таблиците) и накрая вкарваме животните (данните).  Разликата е там, че между различните клетки можем да правим определени връзки. В PostgreSQL базите данни се създават с командата createdb от конзолата. Забележете, че трябва да сте логнати като потребителя, който регистрирахме по-горе в системата за управление на бази данни.
CODE
1
2
3
somnivm@verseau:~$ createdb mytestbase
CREATE DATABASE
somnivm
@verseau:~$
В случай, че не сте логнати като регистрирания потребител, можете да създадете базата данни с командата createdb mytestbase -U vasheto_potrebitelsko_ime -W.  Аналогичната команда за изтриване на база данни е dropdb.

Типове данни в PostgreSQL:
Преди да пристъпим към създаването на таблица, запълването й и отправянето на заявки ще хвърлим един бърз поглед върху основните типове данни в PostgreSQL.
smallint – 2 байтово цяло число със знак от -32768 до +32767
integer – 4 байтово цяло число със знак от -2147483648 до +2147483647
bigint – 8 байтово цяло число със знак от -9223372036854775808 до 9223372036854775807
decimal – десетично число с брой знаци след запетаята, определен от потребителя
real – десетично число с до 6 знака след десетичната запетая
double precision – десетично число с до 15 знака след десетичната запетая
serial – автоматично нарастващо цяло число от 1 до 2147483647
bigserial – автоматично нарастващо цяло число от 1 до 9223372036854775807
boolean – булева стойност – 1 или 0
varchar(n) – низ от символи с варираща дължина до n
char(n) – низ от символи с дължина n
cidr – IPv4 или IPv6 мрежови адреси
macaddr – MAC адрес
inet – IPv4 или IPv6 адреси на хостове
date – дата
timestamp  - дата и час
timestamptz – дата и час, включващи часовата зона
time – час
timetz – час, включващ часовата зона

Информативно ще спомена, че съществуват типове като polygon, line, circle и др. с които се съхраняват координати на различни геометрични фигури.

Създаване на таблица и отправяне на няколко прости заявки:
След като вече познаваме някои от основните типове данни, които можем да съхраняваме в базата данни е време да създадем първата ни таблица.
Първо трябва да се свържем с базата данни и да отворим PostgreSQL конзолата:

somnivm@verseau:~$ psql mytestbase -U somnivm -W
Password:
Welcome to psql 8.0.3, 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

mytestbase=#

След това задаваме следната SQL конструкция:
CODE
1
2
3
4
CREATE TABLE firsttable (
       
id SERIAL PRIMARY KEY,
       
first_name VARCHAR(50) NOT NULL,
       
last_name VARCHAR(50) NOT NULL);
Първата ни таблица е създадена. Сега ще въведем един запис в нея чрез конструкция INSERT и след това ще го изведем със SELECT.

CODE
1
2
3
4
5
6
7
8
9
mytestbase=# INSERT INTO firsttable (first_name, last_name) VALUES ('Pavel', 'Bliznakov');
INSERT 25431 1
mytestbase=# SELECT * FROM firsttable;
 
id | first_name | last_name
----+------------+-----------
 
1 | Pavel      | Bliznakov
(1 row)

mytestbase=#
Да предположим, че искаме да сменим фамилията на запис с id=1. Тогава трябва да изпълним UPDATE firsttable SET last_name='Stoyanov' WHERE id='1'; После проверяваме със SELECT и се уверяваме, че промените са изпълнени:

CODE
1
2
3
4
5
6
7
8
9
mytestbase=# UPDATE firsttable SET last_name='Stoyanov' WHERE id='1';
UPDATE 1
mytestbase=# SELECT * FROM firsttable;
 
id | first_name | last_name
----+------------+-----------
 
1 | Pavel      | Stoyanov
(1 row)

mytestbase=#

Накрая ще изтрием записа с id=1, използвайки конструкцията DELETE FROM firsttable WHERE id='1';
CODE
1
2
3
4
5
6
mytestbase=# DELETE FROM firsttable WHERE id='1';
DELETE 1
mytestbase=# SELECT * FROM firsttable;
 
id | first_name | last_name
----+------------+-----------
(0 rows)
mytestbase=#



  Следваща страница >> 


Ключови думи: postgresql Linux SQL база данни


Още уроци от тази рубрика


 
  • Подобни теми от myLinks
 

 За автора: SOMNIVM  
Информатик!
   
 1 посетител чете този урок (0 потребители и 1 гост)  
Активни потребители: ---
   
  

Еmail  
 

 

 
  • Интересно от Софтуер
 



IT-PLACE.NET © 2004 - 2008