Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Baza Danyc czy poprawnie zrobiona?
Forum PHP.pl > Forum > Bazy danych > Oracle
sej87
hejka czy mógłby ktos luknąc czy to jest poprawnie napisane winksmiley.jpg
z gory wielkie THX


  1. DROP TABLE Wiadomosc;
  2. DROP TABLE O_user;
  3. DROP TABLE Zainteresowania;
  4. DROP TABLE USERS;
  5. DROP TABLE Plec;
  6. DROP TABLE Wyksztalcenie;
  7. DROP TABLE Wojewodztwa;
  8.  
  9.  
  10. CREATE TABLE Wojewodztwa (
  11. id_wojewodztwa NUMBER NOT NULL CONSTRAINT pk_wojewodztwa PRIMARY KEY,
  12. wojewodztwo VARCHAR2(20) NOT NULL
  13. );
  14.  
  15. CREATE TABLE Wyksztalcenie (
  16. id_wykształcenia NUMBER NOT NULL CONSTRAINT pk_Wyksztalcenie PRIMARY KEY,
  17. wyksztalcenie VARCHAR2(20) NOT NULL
  18. );
  19.  
  20. CREATE TABLE Plec (
  21. id_plci NUMBER NOT NULL CONSTRAINT pk_Plec PRIMARY KEY,
  22. plec VARCHAR2(15) NOT NULL
  23. );
  24.  
  25. CREATE TABLE USERS (
  26. user_id NUMBER NOT NULL CONSTRAINT pk_USERS PRIMARY KEY,
  27. user_login VARCHAR2(10) NOT NULL ,
  28. user_haslo VARCHAR2(10) NOT NULL ,
  29. user_imie VARCHAR2(15) NOT NULL ,
  30. user_plec NUMBER NOT NULL ,
  31. user_rocznik NUMBER(4) NOT NULL ,
  32. user_wyksztalcenie NUMBER NOT NULL ,
  33. user_wojewodztwo NUMBER NOT NULL ,
  34. CONSTRAINT fk_user_wojewodztwo FOREIGN KEY (user_wojewodztwo) REFERENCES Wojewodztwa (id_wojewodztwa),
  35. CONSTRAINT fk_user_wyksztalcenie FOREIGN KEY (user_wyksztalcenie) REFERENCES Wyksztalcenie (id_wyksztalcenia),
  36. CONSTRAINT fk_user_plec FOREIGN KEY (user_plec) REFERENCES Plec (id_plci)
  37. );
  38.  
  39. CREATE TABLE O_user (
  40. id_o_user NUMBER NOT NULL CONSTRAINT pk_O_user PRIMARY KEY,
  41. id_user NUMBER NOT NULL ,
  42. strona_www VARCHAR(20) NOT NULL ,
  43. zodiak VARCHAR2(30) NOT NULL ,
  44. wzrost NUMBER(3) NOT NULL ,
  45. kol_wlos VARCHAR2(20) NOT NULL ,
  46. o_sobie VARCHAR2 (200),
  47. CONSTRAINT fk_id_user FOREIGN KEY (id_user) REFERENCES USERS (user_id)
  48. );
  49.  
  50. CREATE TABLE Zainteresowania (
  51. id_zaint NUMBER NOT NULL CONSTRAINT pk_Zainteresowania PRIMARY KEY,
  52. user_id NUMBER NOT NULL ,
  53. hobby VARCHAR2(30) NOT NULL ,
  54. ul_rodz_film VARCHAR2(30) NOT NULL ,
  55. ul_rodz_muzyki VARCHAR2(30) NOT NULL ,
  56. CONSTRAINT fk_user_id FOREIGN KEY (user_id) REFERENCES USERS (user_id)
  57. );
  58.  
  59. CREATE TABLE Wiadomosc (
  60. wiad_id NUMBER NOT NULL CONSTRAINT pk_Wiadomosc PRIMARY KEY,
  61. wiad_tresc VARCHAR2(200),
  62. wiad_do NUMBER ,
  63. wiad_od NUMBER ,
  64. wiad_przeczytane VARCHAR2(20),
  65. wiad_data VARCHAR2(10),
  66. wiad_temat VARCHAR2(30),
  67. wiad_czyj VARCHAR2(20),
  68. CONSTRAINT fk_wiad_do FOREIGN KEY (wiad_do) REFERENCES USERS (user_id),
  69. CONSTRAINT fk_wiad_od FOREIGN KEY (wiad_od) REFERENCES USERS (user_id)
  70. );
szumigt
Czort wie do czego Ty chesz używać tę bazę ale to jakby na drugim planie.
Dlaczego w tabeli wiadomość pole przeczytane jest typu varchar jeszcze 20 a może być przecież boolean. Tutaj wystarczy przecież tak lub nie?? Następne. Co to jest pole wiad_czyj?? Z nagłówka widząc szukałbym tam wartości czyja jest zamieszczona wiadomość. Jeśli tak to nie bardzo wiem po co jest pole wiad_od, notabene całkiem sensowne.
Reszta tak na szybko chyba ok ...
nospor
troche stary ten temat... no, moze nie stary, ale napewno nie pierwszej mlodosci winksmiley.jpg

No ale i ja dorzuce pare groszy:
plec VARCHAR2(15) - przeciez tu tez wystaryczy jeden bajt na wpisanie 0 - obojniak, 1 - kobieta, 2 - mezczyzna
wiad_data VARCHAR2(10), - skoro to jest data, to powinno to byc pole typu datowego. Ulatwisz sobie zycie przy wszelkiego rodzaju wyszukiwaniach
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.