Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Oracle _ Zadanie SQL typy obiektowe

Napisany przez: kolesg 14.04.2016, 14:03:04

Witam muszę wykonać następujące zadanie:
Stwórz własne typy obiektowe:
Placowka – do przechowywania informacji o placówce medycznej
Lekarz - do przechowywania informacji o lekarzach
Pacjent – do przechowywania informacji o pacjencie (tylko dane osobowe)
Badanie – do przechowywania informacji o przeprowadzonym badaniu, wg poniższej struktury:
http://i.imgur.com/tIkKOm1.png?1 http://i.imgur.com/LLaKNCX.png?1
Napisałem coś takiego:

  1. CREATE TYPE Lekarz AS OBJECT (imie VARCHAR2(30),nazwisko varchar2(30));
  2. CREATE TYPE Pacjent AS OBJECT (imie VARCHAR2(30),nazwisko varchar2(30));
  3. CREATE TYPE Placowka AS OBJECT (nazwa VARCHAR2(30));
  4. CREATE TYPE Badanie AS OBJECT (lekarz Lekarz,pacjent Pacjent,placowka REF Placowka);
  5. CREATE TABLE badanie_tabela(Id_badania char(9),Nazwa_badania varchar2(30),Data_badania date,Badanie Badanie);
  6.  
  7. INSERT INTO badanie_tabela VALUES (Id_badania('66705930L'),Nazwa_badania('Mocz analiza ogólna'),Data_badania('2014-03-13
  8. '),Badanie(Lekarz('Joanna','PLokita'),Pacjent('Jan','Nowak'),Placowka('Lux Med')));
ale błędy wysypuję już przy tworzeniu typów. Co należy zmienić żeby to zadziałało?

Napisany przez: nospor 14.04.2016, 14:13:03

Cytat
Co należy zmienić żeby to zadziałało?
Zacznij od podawania nam tych bledow... Naprawde to nie jest logiczne ze jak masz blad to wypadaloby go tez podac?

Napisany przez: ziben69 14.04.2016, 15:59:36

Mam problem z tym samym zadaniem, dopiero zaczynamy przedmiot Obiektowe Bazy danych i bardzo nie rozumiemy tematu.

Potrzebujemy stworzyć obiekty typu lekarz, pacjent, placówka i badanie

http://fotserv.pl/?topic=load&image=1460645774-Capture.JPG

obiekty lekarz i pacjent mają być zagnieżdżone w obiekcie badanie:

LEKARZ

[ORACLE] pobierz, plaintext
  1. CREATE TYPE lekarz_typ AS OBJECT (imie VARCHAR2(50), nazwisko VARCHAR(50),specjalizacja VARCHAR(150));
  2. CREATE TABLE lekarz_table OF lekarz_typ;
  3. INSERT INTO lekarz_table VALUES (lekarz_typ ('Jan','Nowak', 'Diagnosta Laboratoryjny'));
[ORACLE] pobierz, plaintext


PACJENT

[ORACLE] pobierz, plaintext
  1. CREATE TYPE pacjent_typ AS OBJECT (imie VARCHAR2(30),nazwisko VARCHAR(50), adres VARCHAR(250), data_zlecenia DATE, data_urodzenia DATE, pesel NUMBER(11));
  2. CREATE TABLE pacjent_table OF pacjent_typ;
  3. INSERT INTO pacjent_table VALUES (pacjent_typ ('Damian','Roleski', 'St. Ramsteina 1, 35-000 Płock','2014-03-13','1981-04-24',81042410898));
[ORACLE] pobierz, plaintext



obiekt placówka ma mieć referencje do badania:

PLACÓWKA

[ORACLE] pobierz, plaintext
  1. CREATE TYPE placowka_typ AS OBJECT (nazwa VARCHAR2(50), adres VARCHAR(250));
  2. CREATE TABLE placowka_table OF placowka_typ;
  3. INSERT INTO placowka_table VALUES (placowka_typ ('MEDICAL', 'Oraclowska 2, Poznań'));
[ORACLE] pobierz, plaintext


badanie ma mieć kolumny tj: kod_kreskowy, nazwa_badania, data_badania, lekarz, pacjent, placówka, oraz badanie jako obiekt:


BADANIE

[ORACLE] pobierz, plaintext
  1. CREATE TYPE badanie_typ AS OBJECT (id_badania VARCHAR(10),nazwa_badania VARCHAR2(75), data_badania DATE, lekarz lekarz_typ, pacjent pacjent_typ, badanie badanie_typ <--- chyba tutaj jest coś nie tak, placowka REF placowka_typ);
  2. CREATE TABLE badanie_table OF badanie_typ;
[ORACLE] pobierz, plaintext


no i utknąłem na tym jak zadeklarować obiekt typu badanie w obiekcie typu badanie. Proszę o ewentualną korektę, lub podpowiedź.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)