Sie sind nicht angemeldet.

Neo

Erfahrener Schreiberling

  • »Neo« ist männlich
  • »Neo« ist der Autor dieses Themas

Beiträge: 322

Registrierungsdatum: 24.07.2005

Wohnort: Hannover

Beruf: Informatik

1

15.05.2006, 16:22

SQL Blatt 5

Fehlermeldung:

Zitat

CONSTRAINT date_smaller_19_05 CHECK(seen < TO_DATE('19.05.', 'DD.MM.')))

*

ERROR at line 9:

ORA-02436: date or system variable wrongly specified in CHECK constraint



Wie kann ich ein Datum angeben, welches nur akzeptiert wird, falls es sich in der ersten
hälfte des Jahres befindet?

  • »Joachim« ist männlich

Beiträge: 2 863

Registrierungsdatum: 11.12.2001

Wohnort: Hämelerwald

Beruf: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

2

15.05.2006, 17:06

RE: SQL Blatt 5

Zitat

Original von Neo
Fehlermeldung:

Zitat

CONSTRAINT date_smaller_19_05 CHECK(seen < TO_DATE('19.05.', 'DD.MM.')))

*

ERROR at line 9:

ORA-02436: date or system variable wrongly specified in CHECK constraint



Wie kann ich ein Datum angeben, welches nur akzeptiert wird, falls es sich in der ersten
hälfte des Jahres befindet?
Da der Datentyp DATE in Oracle (wenn ich die SQL reference richtig lese) immer ein Jahr beinhalten muß, kann Dein obiger Ansatz nicht verwendet werden. Andersherum sollte es jedoch gehen: Zuerst aus der DATE-Variablen seen die Nummer des Monats auslesen und dann überprüfen, ob dieser "zulässig" ist.

http://oraclelon1.oracle.com/docs/cd/B19…s002.htm#i46862 (Anmeldung erforderlich) verrät Dir, in was man DATE konvertieren kann, http://oraclelon1.oracle.com/docs/cd/B19…s001.htm#i88892 enthält Details über die Konvertierungsfunktionen.

Grundsätzlich hat sich bei solchen Fragen für mich http://www.oracle.com/pls/db102/homepage als Einstiegspunkt bewährt.
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

XAX

Junior Schreiberling

  • »XAX« ist männlich

Beiträge: 207

Registrierungsdatum: 25.12.2004

3

15.05.2006, 18:15

Wo hast du denn bitte das 5. Übungsblatt her, wenn man mal fragen darf?

Panschk[FP]

Junior Schreiberling

  • »Panschk[FP]« ist männlich

Beiträge: 148

Registrierungsdatum: 21.10.2005

Wohnort: H-town

Beruf: Informatik Master

4

15.05.2006, 19:00

Er meint wohl das 4.

Und nimm halt einfach das Jahr mit rein, dann bist du das Problem los -_-

migu

free rider

  • »migu« ist männlich

Beiträge: 2 643

Registrierungsdatum: 11.12.2001

Wohnort: Hannover

Beruf: Developer

5

15.05.2006, 20:49

Zitat

Original von XAX
Wo hast du denn bitte das 5. Übungsblatt her, wenn man mal fragen darf?
Vor allem gibt es schon einen Thread zu Blatt 4! Es macht das Forum nicht gerade übersichtlicher, wenn jeder sein eigenes Thema eröffnet, obwohl es schon eins gibt, Neo. Schau doch bitte beim nächsten Mal, ob es schon etwas zu deinem Thema gibt und schreib dann da hinein.
tar: Anlegen eines leeren Archivs wird feige verweigert.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »migu« (15.05.2006, 20:49)


alanhome

Praktikant

Beiträge: 9

Registrierungsdatum: 15.05.2006

6

20.05.2006, 11:47

Hat jemand Ahnung bei 5.Übungsblatt 1a) wo kann ich finden owner = 'MOVIEDB'

migu

free rider

  • »migu« ist männlich

Beiträge: 2 643

Registrierungsdatum: 11.12.2001

Wohnort: Hannover

Beruf: Developer

7

20.05.2006, 12:13

Zitat

Original von alanhome
Hat jemand Ahnung bei 5.Übungsblatt 1a) wo kann ich finden owner = 'MOVIEDB'
Die Spalte owner befindet sich z.B. in den Tabellen USER_TABLES und ALL_TABLES. Welches Schema (Spalten, Typen der Spalten) eine Tabelle besitzt, kannst du auch mit DESCRIBE tabelle; anzeigen lassen. Um meine eigenen Tabellen anzuzeigen, würde ich eingeben:
SELECT owner,table_name
FROM USER_TABLES
WHERE owner='migu';
tar: Anlegen eines leeren Archivs wird feige verweigert.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »migu« (20.05.2006, 12:13)


alanhome

Praktikant

Beiträge: 9

Registrierungsdatum: 15.05.2006

8

20.05.2006, 13:00

hat sich erledigt,Danke!!

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »alanhome« (20.05.2006, 13:01)


alanhome

Praktikant

Beiträge: 9

Registrierungsdatum: 15.05.2006

9

20.05.2006, 14:46

was heißt "lexikographisch größten Title"?

malte

Trainee

  • »malte« ist männlich

Beiträge: 48

Registrierungsdatum: 30.10.2004

Wohnort: Döhren

10

20.05.2006, 14:55

Zitat

Original von alanhome
was heißt "lexikographisch größten Title"?


Wenn du im Lexikon alle Wörter "C" auswählst, ist das letzte wort mit C-beginnend gemeint...

  • »Joachim« ist männlich

Beiträge: 2 863

Registrierungsdatum: 11.12.2001

Wohnort: Hämelerwald

Beruf: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

11

20.05.2006, 14:58

Zitat

Original von alanhome
was heißt "lexikographisch größten Title"?
Such' mal mit einer Suchmaschine Deiner Wahl nach dem Begriff "lexikographische Ordnung" im Zusammenhang mit formalen Sprachen.

Anschaulich: In Wörterbüchern werden die Einträge in lexikographischer Reihenfolge aufgelistet.
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

alanhome

Praktikant

Beiträge: 9

Registrierungsdatum: 15.05.2006

12

20.05.2006, 17:26

Aufg 2a)

ich habe 2 Tabellen, T1 und T2 .
In T1 gibt es Spalten
A B
-------
1 q
2 r
3 t

In T2 gibt es Spalten
A C
------
2 pp
3 kk

wie man 2 Tabellen verbinden kann,T3 sollte so sein:
A B
-----
1 q
2 pp
3 kk

Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von »alanhome« (20.05.2006, 17:31)


Teklan

Erfahrener Schreiberling

Beiträge: 267

Registrierungsdatum: 13.11.2004

Wohnort: Hannover

13

20.05.2006, 17:27

Sag mal welche Aufgabe!

Erstmal abstrakt.
1.
Du musst erst einen passenden Join finden, bei dem z.B. alle Zeilen von T1 in T3 vorkommen, auch wenn jene bestimmten Zeilen nicht in T2 vorkommen.

2.
Um z.B: bei deinem Beispiel zwischen pp oder r auszuwählen, brauchst du eben diese NVL(Funktion). Dass diese NVL_Funktion überhaupt angwendet werden kann, hängt stark davon ab, wie du den Join zwischen T1 und T2 gemacht hast.

Gruß dein Nachbar^^

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Teklan« (20.05.2006, 17:35)


XAX

Junior Schreiberling

  • »XAX« ist männlich

Beiträge: 207

Registrierungsdatum: 25.12.2004

14

20.05.2006, 20:11

2a) Hat schon jemand eine Lösung für die Aufgabe?
Wenn ich inline view benutze, verschwinden alle Filme die keinen deutschen Titel haben.

3e)
die Anzahl der Bewertungen und die durchschnittliche Bewertung der Person bzgl. Ihrer RATING2 Tabelle

Es kann doch gar nicht mehr als eine Bewertung pro Person geben.
Denn wenn ich versuche für eine Person 2 Bewertungen in rating2 einzufügen, gibts einen "unique constraint (XAX.PK_RATING2) violated " Fehler. Oder verstehe ich da irgendwas falsch?

Teklan

Erfahrener Schreiberling

Beiträge: 267

Registrierungsdatum: 13.11.2004

Wohnort: Hannover

15

20.05.2006, 23:46

2a)
du kannst das Problem mit einem OUTER JOIN "in" der inline view lösen

3e)
Jeder User kann eine Person in einer rating2-Tabellen von vielen nur einmal bewerten - das stimmt schon.
Deshalb musst du ja auch darauf hoffen, dass z.B: jemand anders auch den John Cusack oder C. Blanchett in deiner rating2-Tabelle bewertet^^

DrChaotica

Senior Schreiberling

  • »DrChaotica« ist männlich

Beiträge: 714

Registrierungsdatum: 22.01.2005

Wohnort: SHG

Beruf: SW-Entwickler

16

21.05.2006, 12:10

Hey Malte, du hast uns sogar erlaubt, deine Tabelle (person, rating) zu updaten (statt einfach nur etwas einzufügen) ;)
Verwendet besser GRANT select, insert (person, rating)...

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »DrChaotica« (21.05.2006, 14:43)


DrChaotica

Senior Schreiberling

  • »DrChaotica« ist männlich

Beiträge: 714

Registrierungsdatum: 22.01.2005

Wohnort: SHG

Beruf: SW-Entwickler

17

21.05.2006, 12:11

doppelpost

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »DrChaotica« (21.05.2006, 12:11)


malte

Trainee

  • »malte« ist männlich

Beiträge: 48

Registrierungsdatum: 30.10.2004

Wohnort: Döhren

18

22.05.2006, 12:12

Zitat

Original von DrChaotica
Hey Malte, du hast uns sogar erlaubt, deine Tabelle (person, rating) zu updaten (statt einfach nur etwas einzufügen) ;)
Verwendet besser GRANT select, insert (person, rating)...


Ups, da waren meine Gedanken wohl schon wieder einen Schritt weiter....

:D

Jetzt geht es aber ;)

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »malte« (22.05.2006, 13:35)


Teklan

Erfahrener Schreiberling

Beiträge: 267

Registrierungsdatum: 13.11.2004

Wohnort: Hannover

19

22.05.2006, 16:47

shite, ich kann mich gerade nicht bei SQL einloggen, weil er mein passwort nbicht annimmt.
Bin ich der einzige? (hoffe, wohl nicht)

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Teklan« (22.05.2006, 17:10)


malte

Trainee

  • »malte« ist männlich

Beiträge: 48

Registrierungsdatum: 30.10.2004

Wohnort: Döhren

20

22.05.2006, 16:51

Zitat

Original von Teklan
shite, ich kann mich nicht gerade bei SQL einloggen, weil er mein passwort micht annimmt.
Bin ich der einzige? (hoffe, wohl nicht)


Noch mal testen, ansonsten ne Mail an CST...