Zum Inhalt springen

dbwizard

Mitglieder
  • Gesamte Inhalte

    303
  • Benutzer seit

  • Letzter Besuch

Beiträge von dbwizard

  1. Also, ich habe da eine Abfrage, der ich einen Wert übergeben muss - so was wie in der Art:
    select * from blabla where id=<übergabeparameter>
    Meine Idee: Eine Funktion bauen, der ich den Parameter übergebe und dann den SQL-Befehl ausführen lasse. Dabei soll eine View erzeugt, die den Select-Befehl beinhaltet. Kannst Du mir vielleicht ein Beispiel dafür geben?
    Einen Paramter in einer Prozedur übergeben und anschliessend in einem SQL verwenden kannst du folgendermassen :
    
    
     PROCEDURE my_procedure ( i_n_MyParameter   IN NUMBER)    IS
    
        BEGIN
    
            SELECT * FROM My_Table
    
             WHERE ID = i_n_MyParameter   ;
    
    END;
    
        EXCEPTION
    
            WHEN NO_DATA_FOUND
    
            THEN
    
                RETURN;
    
    
    END;
    
    

    - Alternativ kanst du auch dynamisches SQL verwenden, wenn du erst zur Laufzeit weisst, wie der SQL aussieht

    Gruss

  2. die views werden bei "einfachen" abfragen denke ich mal auch recht überflüssig sein, die würd ich dann auch gleich durch ne stored procedure ersetzen.

    - Hat irgendwie nichts miteinander zu tun ? Views kaspeln SQL, du kannst diese durchaus auch in SP verwenden, macht durchaus Sinn

    Gruss

  3. Hallo,

    ich probier gerade an einer Prozedur rum:

    Erst bekomm ich die Meldung, dass die Prozedur mit Kompilierungsfehlern erstellt wurde. Folgende Fehler werden mir angezeigt:

    Was mache ich da falsch?:confused:

    - Das Declare kannst du dir sparen

    Deine Struktur ist noch unvollständig :

    create or replace procedure f_verk (i_f_id IN number, i_verkauft IN number)

    --> IS

    cursor c_paint(i_paint_id IN farbe.f_id%type) is

    select f_am_lager from farbe where f_id=i_paint_id;

    l_qty farbe.f_am_lager%type;

    begin

    error_code number := SQLCODE;

    error_mes varchar2(200) := SQLERM;

    ....

    ....

    END;

    Gruss

  4. Hi,

    Ich möchte also abfragen, welcher Satz den Wert aus Feld1 auch in Feld2 stehen hat, bekomme das aber mit dem Wildcard nicht hin:

    Danke für die Hilfe!

    Hallo,

    Du kannst dies mit REGEXP lösen. Mal ein Beispiel für die Suche :

    
    SELECT CASE
    
               WHEN REGEXP_LIKE (Feld2,  Feld1,'c')
    
               THEN
    
                   'Match Found'
    
               ELSE
    
                   'No Match Found'
    
           END
    
               AS output
    
      FROM MyTable;
    
    
    

    Hinweis : Der Parameter 'c' steht für CaseSensitive, alternativ wäre auch ein 'i' (CaseInsensitive) möglich

    Gruss

  5. Hallo liebe kompetente Forengemeinde,

    ich habe zwei Instanzen auf unserem Oracle-Server laufen: Einmal Instanz ECHT_DB und einmal ENTW_DB. Nun möchte ich von der ECHT_DB einen export durchführen (nur die Tabellen mit Daten). Wie kann ich dem Export-Programm mitteilen, dass ich gerne von der ECHT_DB den Export machen möchte? Vielen Dank schon mal für die Antworten.

    Hallo,

    Du musst ja die Instanz und das Schema jeweils als Parameter für Datapump mit angeben ? Poste doch mal deine Aufruf des Exports

    Gruss

  6. Das ist doch die Antwort auf die erste Frage.

    Ich will aber zwischen 1995 und 03 ein / haben.

    Im MOment ist es ja nur 199503

    - Einfach eine Kombination LEFT und RIGHT plus ein CONCAT_WS für das "/" ? Habe jetzt gerade keine MYSQL am laufen, um es dir auszuschreiben...

    Gruss

  7. Ich habe ein ähnliches Problem. Es gibt ein string-Feld in der Datenbank

    in dem der Monat und das Jahr so drin stehen: 199503. Nun möchte

    ich es aber auf dem Textfeld so sehen 1995/03. Wie drücke ich das mit SQL aus?

    Zu dem ersten Problem...

    Kannst du da nicht einfach die FieldLenght auf 4 begrenzen?

    Hallo.

    ihr habt beide eine Designfehler in eurer Datenbank. Datumswerte dürfen NUR mit Typ DATE gespeichert werden, alles andere ist Unsinn.

    Um das Problem jeweils nun konkret zu lösen, müsstet ihr eure Datenbankversion bekanntgebebn, da sich die Lösung je nach verwendetem System unterscheidet

    Gruss

  8. Der sinn ist das wir lernen Funktionen zu schreiben . Die genaue Aufgabenstellung lautete :

    Schreiben Sie eine Funktion mit dem Namen "monatsname()". Die Funktion soll den aktuellen Monatsnamen in deutsch zurückliefern.

    Da ich momentan noch am Anfang bin was Datenbanken angeht kann ich verstehen das die Aufgabenstellung noch sehr simpel ist um erstmal ein Gefühl für die Syntax zu bekommen .

    LG

    Die DB, welche du verwendest wäre noch hilfreich....Also in Oracle wäre diese Funktion folgendermassen :

    
    FUNCTION monatsname RETURN VARCHAR2
    
    is
    
    l_sResult VARCHAR2(15);
    
    
    BEGIN
    
        SELECT   TO_CHAR (SYSDATE, 'MONTH') INTO l_sresult FROM DUAL;
    
    
        RETURN (l_sresult);
    
    END;
    
    

    Gruss

  9. deine Funktion da versteh ich eh nicht, du übergibst ein datum um dann den aktuellen monatsnamen auszugeben??

    Ja, dass wollte doch der OP ?

    Gruss

  10. Hi Jungs ,

    ich möchte in sql eine Funktion schreiben die mit die monate als name ausgibt

    LG LordPalme

    Hallo,

    Zumindest in Oracle könntest du folgendes machen :

    
    SELECT to_char(SYSDATE,'MONTH') FROM dual
    
    

    Gruss

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...