Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

modifikacia foruma, veza izmedu tabela

[es] :: Baze podataka :: modifikacia foruma, veza izmedu tabela

[ Pregleda: 3043 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mrki
radnik
Sombor

Član broj: 1050
Poruke: 580
*.beotel.net

Jabber: mrki@elitesecurity.org
ICQ: 58816584


Profil

icon modifikacia foruma, veza izmedu tabela18.03.2004. u 08:07 - pre 195 meseci
imam neku malu bazu za jednostavan forum:
Code:

CREATE TABLE forum_post (
  post_id int(10) default NULL auto_increment,
  topic_id int(10) NOT NULL default '0',
  poster varchar(50) NOT NULL default ' ',
  post_time varchar(20) default NULL,
  email varchar(75) NOT NULL default ' ',
  web varchar(75) NOT NULL default ' ',
  PRIMARY KEY (post_id),
  KEY post_id(post_id),
  KEY topic_id(topic_id),
  KEY poster_id(poster)
) ENGINE=MyISAM;


CREATE TABLE forum_postext (
  post_id int(10) NOT NULL default '0',
  post_text text,
  PRIMARY KEY (post_id)
) ENGINE=MyISAM;


CREATE TABLE forum_topic (
  topic_id int(10) default NULL auto_increment,
  topic_title varchar(100) default NULL,
  topic_poster varchar(50) NOT NULL default ' ',
  topic_time varchar(20) default NULL,
  topic_views int(10) NOT NULL default '0',
  topic_replies int(10) NOT NULL default '0',
  topic_last_post_id int(10) NOT NULL default '0',
  PRIMARY KEY (topic_id),
  KEY topic_id(topic_id),
  KEY topic_last_post_id(topic_last_post_id)
) ENGINE=MyISAM;

pitanje:
1. nisu mi bas jasne ove veze izmedju tabela, dali neko moze da mi rastumaci
stavke iz prve tabele:
...
KEY post_id(post_id),
KEY topic_id(topic_id),
KEY poster_id(poster)

odnosno iz trece:
...
KEY topic_id(topic_id),
KEY topic_last_post_id(topic_last_post_id)


2.zeleo bih da podelim forum na vise tema (pr. plivanje, kosarka, kuvanje...)
znaci trebala bi mi jos jedna tabela pr.:

CREATE TABLE forum_name(
forum_id int(10) default NULL auto_increment,
eventualno_moderator int(10) NOT NULL default '0',
PRIMARY KEY (topic_id)
Interesuje me kako da ovu tabelu povezem sa ostatkom baze?
)ENGINE=MyISAM;

Ako moze neki precizan, akratak :) odgovor cisto da rastumacim stvar...moze
svakako i neki dobar link koji bi bio od pomoci.


Nekad sam bio mlad ;)
 
Odgovor na temu

CandyMan

Član broj: 3420
Poruke: 147



+48 Profil

icon Re: modifikacia foruma, veza izmedu tabela20.03.2004. u 10:49 - pre 195 meseci
1. KEY je sinonim za indeks.
KEY ime_indeksa (indeksirano_polje)
Indeksi se koriste radi poboljsanja performansi.

2. Nije mi baš jasno šta si mislio sa ove tri tabele... Pokušaj da objasniš šta hoćeš prostim jezikom.
Nisam ni znao da znam dok nisam prob'o!
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13643



+157 Profil

icon Re: modifikacia foruma, veza izmedu tabela20.03.2004. u 11:52 - pre 195 meseci
Ukratko ovako:

- dodaš u forum_topic kolonu board_id
- tabela forum_boards treba da sadrži id polje pored naziva foruma i ostalih podataka

Taj "id" u drugoj ti je u stvari "board_id" u prvoj tabeli i onda kada treba prikazati samo teme iz jednog foruma, selektuješ listu iz forum_topic sa dodatkom na where: ..AND boardid=$broj.

Sad videh da si nešto slično već smislio sa forum_name tabelom. U njoj promeni ono "PRIMARY KEY (topic_id)" sa "PRIMARY KEY (forum_id)" pošto topic_id nemaš u toj tabeli i dodaj jednu kolonu za naziv i jednu za opis foruma, na primer. A povezivanje radiš izmenom kverija u okviru programa koji koristi tu bazu. Daj primer nekog kverija i kakvu si tabelu smislio, pa da ga izmenimo.
 
Odgovor na temu

Dejan Topalovic
Dejan Topalović
Senior Oracle DBA & Senior PL/SQL
Developer, Erste Sparinvest (Erste
Bank), Vienna, Austria
Vienna

Član broj: 635
Poruke: 1374
*.1.14.vie.surfer.at

Sajt: www.baze-podataka.net


+2 Profil

icon Re: modifikacia foruma, veza izmedu tabela20.03.2004. u 20:24 - pre 195 meseci
mrki:
Ako te zanima čemu služi PRIMARY KEY klauzula pri kreiranju tabele, pogledaj slijedeći link http://www.mysql.com/doc/en/CREATE_TABLE.html
Negdje otprilike na polovini stranice se nalazi objašnjenje o tome.
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
 
Odgovor na temu

[es] :: Baze podataka :: modifikacia foruma, veza izmedu tabela

[ Pregleda: 3043 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.