You are not logged in.

motja

Trainee

  • "motja" started this thread

Posts: 53

Date of registration: Nov 8th 2004

1

Friday, May 26th 2006, 6:31pm

SQL Blatt6

zu der Aufgabe2.b)

nach dem ich die Funktion quoted_character kreiert habe (endlich mal ohne errors), wollte ich die Funktion ausprobieren und zwar mit:

begin
DBMS_OUTPUT.PUT_LINE (quoted_character ('The Terminator: Hasta la vista, baby.'));
End;
/

darauf bekomme ich folgende Ausgabe:

The Terminator
begin
*

ERROR at line 1:
ORA-06503: PL/SQL: Function returned without value
ORA-06512: at "Benutzername.QUOTED_CHARACTER", line 11
ORA-06512: at line 2
Elapsed: 00:00:00.01

The Terminator wäre hier auch die richtige Antwort.
Weißt jemand woran die Fehlermeldung liegen kann?

This post has been edited 2 times, last edit by "motja" (May 26th 2006, 7:39pm)


motja

Trainee

  • "motja" started this thread

Posts: 53

Date of registration: Nov 8th 2004

2

Friday, May 26th 2006, 8:00pm

SQL Blatt6

wenn es euch weiter hilft
- at line 2 steht RETURN
- line 11 das END;

Bei der Aufgabe 2.c) bekomme dieselbe Meldung.
Sieht so aus, dass ich kontinuierlich gleichen Fehler mache.

  • "Joachim" is male

Posts: 2,863

Date of registration: Dec 11th 2001

Location: Hämelerwald

Occupation: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

3

Friday, May 26th 2006, 8:34pm

RE: SQL Blatt6

Quoted

Original von motja
wenn es euch weiter hilft
- at line 2 steht RETURN
- line 11 das END;

Bei der Aufgabe 2.c) bekomme dieselbe Meldung.
Sieht so aus, dass ich kontinuierlich gleichen Fehler mache.
Dann schreib Dir doch erstmal eine ganz einfache Funktion (z. B. eine ohne oder mit nur einem Parameter, die stets denselben Wert ausgibt), die Du ohne Fehlermeldung aufrufen kannst. Wenn das funktioniert, kannst Du diese Funktion schrittweise erweitern und so die Fehlerursache finden.

Ich jedenfalls kann mit diesen Fehlermeldungen nichts anfangen ohne die Deklaration der Funktion zu kennen.
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

This post has been edited 2 times, last edit by "Joachim" (May 26th 2006, 8:35pm)


Jim Rakete

Trainee

  • "Jim Rakete" is male

Posts: 50

Date of registration: Jun 4th 2005

Occupation: Mathe/Informatik

4

Saturday, May 27th 2006, 9:59am

Quoted

Ein Zitat wird meist durch den Namen des Redners eingeleitet, etwa „The Terminator: Hasta la vista, baby.“. Schreiben Sie eine PL/SQLFunktion quoted_character, die den Rollennamen aus einem Zitat zurückliefert, im Beispiel also „The Terminator“.
Sie können davon ausgehen, dass der Rollenname am Anfang des Zitats steht und mit einem Doppelpunkt beendet wird. Ist kein Rollenname zu ermitteln, dann soll der NULLWert zurückgeliefert werden. Ignorieren Sie Zitate, die mit einer eckigen Klammer ([) beginnen oder in denen kein Doppelpunkt vorhanden ist.


Bedeutet das, daß folgende Ausgaben gefordert sind:
quoted_character('The Terminator: Hasta la vista, baby.') --> The Terminator
quoted_character('[The Terminator: Hasta la vista, baby.') --> NULL
quoted_character('The Terminator Hasta la vista, baby.') --> NULL

Oder wie ist das Wörtchen "Ignorieren" hier zu verstehen?

  • "Joachim" is male

Posts: 2,863

Date of registration: Dec 11th 2001

Location: Hämelerwald

Occupation: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

5

Saturday, May 27th 2006, 10:24am

Quoted

Original von Jim Rakete

Quoted

Ein Zitat wird meist durch den Namen des Redners eingeleitet, etwa „The Terminator: Hasta la vista, baby.“. Schreiben Sie eine PL/SQLFunktion quoted_character, die den Rollennamen aus einem Zitat zurückliefert, im Beispiel also „The Terminator“.
Sie können davon ausgehen, dass der Rollenname am Anfang des Zitats steht und mit einem Doppelpunkt beendet wird. Ist kein Rollenname zu ermitteln, dann soll der NULLWert zurückgeliefert werden. Ignorieren Sie Zitate, die mit einer eckigen Klammer ([) beginnen oder in denen kein Doppelpunkt vorhanden ist.


Bedeutet das, daß folgende Ausgaben gefordert sind:
quoted_character('The Terminator: Hasta la vista, baby.') --> The Terminator
quoted_character('[The Terminator: Hasta la vista, baby.') --> NULL
quoted_character('The Terminator Hasta la vista, baby.') --> NULL

Oder wie ist das Wörtchen "Ignorieren" hier zu verstehen?
Ich interpretiere die Aufgabenstellung so wie Du.
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

DrChaotica

Senior Schreiberling

  • "DrChaotica" is male

Posts: 714

Date of registration: Jan 22nd 2005

Location: SHG

Occupation: SW-Entwickler

6

Saturday, May 27th 2006, 12:38pm

Quoted

Original von Jim Rakete
Bedeutet das, daß folgende Ausgaben gefordert sind:
quoted_character('The Terminator: Hasta la vista, baby.') --> The Terminator
quoted_character('[The Terminator: Hasta la vista, baby.') --> NULL
quoted_character('The Terminator Hasta la vista, baby.') --> NULL


So bin ich bei dieser Aufgabe auch vorgegangen, das bringt dich weiter.

Kann schon jemand diese Kettenbruchdarstellung (Aufg. 2f) zum Quotienten 6765/4181 bestätigen? bin gerade zu faul, das nachzurechnen ;-)
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2]

masjanja

Praktikant

  • "masjanja" is female

Posts: 4

Date of registration: May 27th 2006

7

Saturday, May 27th 2006, 6:31pm

SQL Blatt6

Hallo!
Weiß jemand, was die Funktionen INSTR und SUBSTR liefern? ?(

Jim Rakete

Trainee

  • "Jim Rakete" is male

Posts: 50

Date of registration: Jun 4th 2005

Occupation: Mathe/Informatik

8

Saturday, May 27th 2006, 6:36pm

@ Joachim/DrChaotica:
Danke für Eure Hilfe.

@ DrChaotica:
Mein Kettenbruch sieht genauso aus.

@ masjanja:
SUBSTR('HelloWorld',1,5) --> Hello
INSTR('HelloWorld', 'W') --> 6
(Die Grundfunktionen werden in den Folien "01b" vom 21. April erklärt)

This post has been edited 1 times, last edit by "Jim Rakete" (May 27th 2006, 6:37pm)


CrissCross

Erfahrener Schreiberling

  • "CrissCross" is male

Posts: 282

Date of registration: Feb 15th 2005

9

Saturday, May 27th 2006, 6:38pm

Hier noch ne Seite mit ein paar Oracle Funktionen:

http://www.datenbank-sql.de/sql_funktionen.htm
"Technology is easy - people are hard."

(John Gage - Sun Microsystems zum Thema warum IT-Projekte scheitern)

masjanja

Praktikant

  • "masjanja" is female

Posts: 4

Date of registration: May 27th 2006

10

Sunday, May 28th 2006, 9:50pm

@Jim Rakete
@CrissCross Danke für die Hilfe! =)

iriania

Junior Schreiberling

  • "iriania" is female

Posts: 222

Date of registration: Nov 24th 2003

Location: Waqwaq

Occupation: Wie? Ich studiere? seit wann denn?

11

Tuesday, May 30th 2006, 10:46am

Ich habe gerade mit der 1. Aufgabe angefangen, und Squiggle liefert mir andauernd folgende Fehlermeldung:

Quoted

'missing or invalid option'



Ich dachte zuerst, der Fehler liegt bei mir, doch dann habe ich es mit folgendem Beispiel aus der Vorlesung versucht:

Quoted


SET SERVEROUTPUT ON
DECLARE Myname VARCHAR2(20) := 'John';
BEGIN
DBMS_OUTPUT.PUT_LINE('My name is: '||Myname);
Myname := 'Steven';
DBMS_OUTPUT.PUT_LINE('My name is: '||Myname);
END;


und bekam prompt die gleiche Fehlermeldung.
Hat jemand eine Ahnung, woran das liegen könnte?

edit: mit isql*plus funktioniert es!
...und sie dreht sich doch!

This post has been edited 1 times, last edit by "iriania" (May 30th 2006, 10:51am)


DrChaotica

Senior Schreiberling

  • "DrChaotica" is male

Posts: 714

Date of registration: Jan 22nd 2005

Location: SHG

Occupation: SW-Entwickler

12

Tuesday, May 30th 2006, 11:04am

Ohne "SET SERVEROUTPUT ON" funktioniert es bei mir. Christian meinte während seiner letzten Übung ja auch, dass wir diese Option bei Squiggle vergessen könnten, weil der Output hier standardmäßig eingeschaltet ist, oder so ähnlich.

Bei mir war es dafür seltsamerweise so, dass die Fehlermeldungen ohne jeden erkennbaren Grund auf einmal nicht mehr ausgegeben wurden, ich mußte sie mir ab dem Zeitpunkt jedesmal selbst aus USER_ERRORS zusammensuchen ?(

cst

Praktikant

  • "cst" is male

Posts: 24

Date of registration: Jun 1st 2005

Location: Wunstorf

13

Tuesday, May 30th 2006, 1:35pm

SQuiggLe versteht keine zwei Befehle gleichzeitig und "SET ..." + "DECLARE...BEGIN...END" sind zwei Befehle. (Außerdem macht SQuiggLe noch etwas mysteriöse Umformungen mit der Eingabe und schickt sie nicht direkt an das DBMS.)
Wie schon gesagt benötigt man "SET SERVEROUTPUT ON" bei SQuiggLe aber nicht.
Das mit den USER_ERRORS kann ich mir nicht erklären.

Übrigens, ich hab mir schon ein paar Abgaben angesehen und für Aufgabe 2c) genügt ein (Geburts-)datum als Argument der Funktion AGE. (Eine Personennummer mit entsprechendem SELECT...INTO lasse ich auch gelten, SQL in PL/SQL war aber offiziell noch nicht dran.)

Kadafi

Praktikant

  • "Kadafi" is male

Posts: 9

Date of registration: Oct 28th 2004

Location: From the Jungle

14

Tuesday, May 30th 2006, 5:11pm

Hallo,

wenn ich bei Aufgabe 2b mir den ganzen dialog 55 vom film 22 12 68 anzeigen lasse, ist da nirgendwo was von harrison ford zu sehen.
Laut meiner Ausgabe sind an diesem Dialog nur Luke und Han Solo beteiligt oder mache ich was falsch??^^

Justus

Junior Schreiberling

  • "Justus" is male

Posts: 152

Date of registration: Oct 16th 2004

Occupation: ich will auch mal Käptain sein!

15

Tuesday, May 30th 2006, 5:20pm

ich krieg das mit dem Fehler anzeigen nicht hin. Bei SQuiggLe sagt er zu allem OK auch wenns auf jeden fall falsch ist und bei iISQ PLus steht wenn ich "show errors;" eingebe nur: Warning: Function created with compilation errors.
Elapsed: 00:00:00.03

Wie schaft ihr dass, das da die normale Fehler meldung angezeigt wird?

This post has been edited 1 times, last edit by "Justus" (May 30th 2006, 5:21pm)


XAX

Junior Schreiberling

  • "XAX" is male

Posts: 207

Date of registration: Dec 25th 2004

16

Tuesday, May 30th 2006, 7:05pm

Quoted

Original von Kadafi
wenn ich bei Aufgabe 2b mir den ganzen dialog 55 vom film 22 12 68 anzeigen lasse, ist da nirgendwo was von harrison ford zu sehen.
Laut meiner Ausgabe sind an diesem Dialog nur Luke und Han Solo beteiligt oder mache ich was falsch??^^


Du musst ja auch erstmal die entsprechenden Tabelle abfragen welche Rolle Harison Ford im besagten Film spielt, Han oder Luke wer weiß das schon.

This post has been edited 1 times, last edit by "XAX" (May 30th 2006, 7:05pm)


malte

Trainee

  • "malte" is male

Posts: 48

Date of registration: Oct 30th 2004

Location: Döhren

17

Tuesday, May 30th 2006, 7:36pm

Quoted

Original von Justus
ich krieg das mit dem Fehler anzeigen nicht hin. Bei SQuiggLe sagt er zu allem OK auch wenns auf jeden fall falsch ist und bei iISQ PLus steht wenn ich "show errors;" eingebe nur: Warning: Function created with compilation errors.
Elapsed: 00:00:00.03

Wie schaft ihr dass, das da die normale Fehler meldung angezeigt wird?


Du darfst nicht beide Befehle in einem Fenster direkt hintereinander in iSQL ausführen, sondern erst deine 'create function ...;' ausführen dann 'show errors'; ausführen

DrChaotica

Senior Schreiberling

  • "DrChaotica" is male

Posts: 714

Date of registration: Jan 22nd 2005

Location: SHG

Occupation: SW-Entwickler

18

Tuesday, May 30th 2006, 8:22pm

Quoted

Original von XAX

Quoted

Original von Kadafi
wenn ich bei Aufgabe 2b mir den ganzen dialog 55 vom film 22 12 68 anzeigen lasse, ist da nirgendwo was von harrison ford zu sehen.
Laut meiner Ausgabe sind an diesem Dialog nur Luke und Han Solo beteiligt oder mache ich was falsch??^^


Du musst ja auch erstmal die entsprechenden Tabelle abfragen welche Rolle Harison Ford im besagten Film spielt, Han oder Luke wer weiß das schon.

Ha, das war ein guter :D

malte

Trainee

  • "malte" is male

Posts: 48

Date of registration: Oct 30th 2004

Location: Döhren

19

Tuesday, May 30th 2006, 9:40pm

Quoted

Original von DrChaotica
Kann schon jemand diese Kettenbruchdarstellung (Aufg. 2f) zum Quotienten 6765/4181 bestätigen? bin gerade zu faul, das nachzurechnen ;-)
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2]


Habe da statt der 2 am Ende zwei mal die 1...
[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]

DrChaotica

Senior Schreiberling

  • "DrChaotica" is male

Posts: 714

Date of registration: Jan 22nd 2005

Location: SHG

Occupation: SW-Entwickler

20

Tuesday, May 30th 2006, 9:48pm

Inzwischen hatte ich das doch mal mit dem Taschenrechner nachgeprüft, das stimmte schon so. Tut mir leid ;)