Ergebnis 1 bis 7 von 7

Thema: Funktion ohne Namen angelegt und kann diese nicht löschen

  1. #1
    Rigoletto ist offline Neuer Benutzer
    Registriert seit
    11.07.2011
    Beiträge
    3

    Standard Funktion ohne Namen angelegt und kann diese nicht löschen

    Hallo,

    ich beschäftige mich gerade mit Funktionen und Triggern und habe zum testen von dieser Seite Triggerprozeduren einfach mal die Funktion "mitarbeiter_prüfung" kopiert und über den pgadmin III angelegt. Schätze da hat sich beim kopieren irgendwie ein sonderzeichen eingeschlichen denn er hat die funktion jetzt ohne Namen angelegt.

    Ich schaff es jetzt leider nicht diese namenlose funktion zu löschen, jemand eine idee wie das zu machen ist?
    Anbei ein screenshot aus dem pgadmin.

    mfg
    Angehängte Grafiken Angehängte Grafiken

  2. #2
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.472

    Standard

    Zitat Zitat von Rigoletto Beitrag anzeigen
    Hallo,

    ich beschäftige mich gerade mit Funktionen und Triggern und habe zum testen von dieser Seite Triggerprozeduren einfach mal die Funktion "mitarbeiter_prüfung" kopiert und über den pgadmin III angelegt. Schätze da hat sich beim kopieren irgendwie ein sonderzeichen eingeschlichen denn er hat die funktion jetzt ohne Namen angelegt.

    Ich schaff es jetzt leider nicht diese namenlose funktion zu löschen, jemand eine idee wie das zu machen ist?
    Anbei ein screenshot aus dem pgadmin.

    mfg
    Du guggst in pg_proc:

    Code:
    select oid, proname, prosrc from pg_proc order by oid desc;

    Da findest Du auch den Namen der Funktion. Sie hat einen, da pg_proc ein NOT NULL auf proname hat.


    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  3. #3
    Rigoletto ist offline Neuer Benutzer
    Registriert seit
    11.07.2011
    Beiträge
    3

    Standard

    Zitat Zitat von akretschmer Beitrag anzeigen
    Du guggst in pg_proc:

    Code:
    select oid, proname, prosrc from pg_proc order by oid desc;

    Da findest Du auch den Namen der Funktion. Sie hat einen, da pg_proc ein NOT NULL auf proname hat.


    Andreas
    Hallo Andreas,

    hm, scheint leider bei mir nicht der Fall zu sein, proname wird zumindest leer angezeigt.
    Aber ich kann doch einfach ein update über die oid auf der Tabelle machen und einen Namen reinsetzen, oder?
    Dann sollte ich den Trigger dann sauber löschen können.

    grüße

    added: lenght(proname) zeigt 18 an.
    Geändert von Rigoletto (11.07.2011 um 09:16 Uhr)

  4. #4
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.472

    Standard

    Zitat Zitat von Rigoletto Beitrag anzeigen
    Hallo Andreas,

    hm, scheint leider bei mir nicht der Fall zu sein, proname wird zumindest leer angezeigt.
    Aber ich kann doch einfach ein update über die oid auf der Tabelle machen und einen Namen reinsetzen, oder?
    Dann sollte ich den Trigger dann sauber löschen können.

    grüße

    added: lenght(proname) zeigt 18 an.
    dann sind es wohl 18 Leerzeichen als Name.

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  5. #5
    Rigoletto ist offline Neuer Benutzer
    Registriert seit
    11.07.2011
    Beiträge
    3

    Standard

    Danke, direktes umbenennen in der pg_proc lässt das löschen wieder zu.

  6. #6
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.056

    Standard

    Zitat Zitat von Rigoletto Beitrag anzeigen
    Danke, direktes umbenennen in der pg_proc lässt das löschen wieder zu.
    Waa, mach das nicht wieder ;-)

    Du hättest auch
    DROP FUNCTION "<18 Leerzeichen" (...)
    machen können.
    Aber änder bitte nie wieder etwas in den Systemtabellen, außer du weißt sehr genau, was du tust.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  7. #7
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.472

    Standard

    Zitat Zitat von ads Beitrag anzeigen
    Waa, mach das nicht wieder ;-)

    Du hättest auch

    machen können.
    Aber änder bitte nie wieder etwas in den Systemtabellen, außer du weißt sehr genau, was du tust.
    ACK.


    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 12.06.2009, 15:37
  2. Start einer Funktion ohne auf beendigung zu warten
    Von Mr.Noname im Forum Programmierung
    Antworten: 9
    Letzter Beitrag: 22.10.2007, 11:14
  3. Konnte den Namen der Power-User-Gruppe nicht herausfinden...
    Von Nortum im Forum Installation von PostgreSQL
    Antworten: 5
    Letzter Beitrag: 18.02.2006, 17:33
  4. Antworten: 2
    Letzter Beitrag: 14.02.2006, 11:52

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum