Ergebnis 1 bis 8 von 8

Thema: Anleitung zu Create Function gesucht

  1. #1
    Gresi ist offline Neuer Benutzer
    Registriert seit
    23.11.2010
    Beiträge
    9

    Standard Anleitung zu Create Function gesucht

    Hi,

    hat jemand einen Link zu einer guten Anleitung für Create Funktion? Oder existiert evtl. eine Sammlung von Funktionen, die ich mal anschauen kann?

    Wenn ich z. B. einen Update-Befehl ausführe, dann soll lt. Handbuch die Anzahl der geänderten Zahlen in update count zurückgeliefert werden.

    Wenn ich aber per
    IF update count>0 then

    weiterarbeite, bekomme ich nur Fehler.

    Wie kann ich ein Datum als varchar im Format yyyymmdd berechnen? Mein Versuch per:

    heute=current_date;
    c_heute=convert(varchar,10000*EXTRACT(YEAR FROM TIMESTAMP,heute)+100*EXTRACT(MONTH FROM TIMESTAMP ,heute)+EXTRACT(DAY FROM TIMESTAMP ,heute));

    liefert auch nur Fehler.

    Danke

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

    Standard

    Zitat Zitat von Gresi Beitrag anzeigen
    Hi,

    hat jemand einen Link zu einer guten Anleitung für Create Funktion? Oder existiert evtl. eine Sammlung von Funktionen, die ich mal anschauen kann?

    Wenn ich z. B. einen Update-Befehl ausführe, dann soll lt. Handbuch die Anzahl der geänderten Zahlen in update count zurückgeliefert werden.

    Wenn ich aber per
    IF update count>0 then

    weiterarbeite, bekomme ich nur Fehler.

    Wie kann ich ein Datum als varchar im Format yyyymmdd berechnen? Mein Versuch per:

    heute=current_date;
    c_heute=convert(varchar,10000*EXTRACT(YEAR FROM TIMESTAMP,heute)+100*EXTRACT(MONTH FROM TIMESTAMP ,heute)+EXTRACT(DAY FROM TIMESTAMP ,heute));

    liefert auch nur Fehler.

    Danke
    Anzahl betroffener Rows eines Updates:
    PostgreSQL: Documentation: Manuals: PostgreSQL 9.0: Basic Statements

    Formatierung von Datum:
    Code:
    postgres=# select to_char(now(), 'YYYYmmdd');
     to_char
    ----------
     20101123
    (1 row)

    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
    castorp ist offline Erfahrener Benutzer
    Registriert seit
    27.06.2009
    Beiträge
    525

    Standard

    Zitat Zitat von Gresi Beitrag anzeigen
    hat jemand einen Link zu einer guten Anleitung für Create Funktion?
    Was gefällt Dir am Handbuch nicht?
    Da sind doch Beispiele drin: PostgreSQL: Documentation: Manuals: PostgreSQL 9: CREATE FUNCTION


    Zitat Zitat von Gresi Beitrag anzeigen
    Oder existiert evtl. eine Sammlung von Funktionen, die ich mal anschauen kann?
    Schau dir mal diese Seite an: Category:Snippets - PostgreSQL Wiki


    convert .... liefert auch nur Fehler
    Das funktioniert ausschliesslich mit Microsoft SQL Server.
    A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'

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

    Standard

    Außerdem hat (zumindest) pl/pgSQL ein := statt einem = in Verwendung.


    Sicher das du hier im richtigen Forum bist? Hier geht es um PostgreSQL, nicht um MS-SQL Server.
    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

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

    Standard

    Zitat Zitat von ads Beitrag anzeigen
    Außerdem hat (zumindest) pl/pgSQL ein := statt einem = in Verwendung.

    Bei Wertzuweisungen? Ein = geht auch.

    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

  6. #6
    Gresi ist offline Neuer Benutzer
    Registriert seit
    23.11.2010
    Beiträge
    9

    Standard

    Hi,

    danke für die Hinweise. Das Wiki werde ich morgen mal durcharbeiten.

    Die englische Doku bringt mit nicht viel, da ich mich in den Postgre-Speziellen Befehlen nicht auskenne. Da suche ich was in meiner Sprache.

    Das c_heute= to_char(now(), 'YYYYmmdd'); produziert wenigstens keinen Fehler, allerdings liefert die erstellte Funktion nichts zurück, eigentlich habe ich RETURNS varchar angegeben!?

  7. #7
    castorp ist offline Erfahrener Benutzer
    Registriert seit
    27.06.2009
    Beiträge
    525

    Standard

    Zitat Zitat von Gresi Beitrag anzeigen
    Das c_heute= to_char(now(), 'YYYYmmdd'); produziert wenigstens keinen Fehler, allerdings liefert die erstellte Funktion nichts zurück, eigentlich habe ich RETURNS varchar angegeben!?
    Und zeigst Du uns den kompletten Code für die Funktion, oder müssen wir warten bis unser Glaskugeln wieder funktionieren?

    Im Übrigen sagt man entweder Postgres, PostgreSQL oder einfach pg.
    Aber niemals Postgre (ohne s) ...
    A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'

  8. #8
    Gresi ist offline Neuer Benutzer
    Registriert seit
    23.11.2010
    Beiträge
    9

    Standard

    Hi,

    ich habe es jetzt hinbekommen. Der Code läuft soweit:

    CREATE OR REPLACE FUNCTION showit (pos varchar)
    RETURNS void AS $$
    DECLARE
    c_heute varchar;
    erg int;
    ex_sql varchar;

    BEGIN
    c_heute= to_char(now(), 'YYYYmmdd');

    ex_sql='update pg set x'||pos||'=x'||pos||'+1 where datum='||c_heute;
    EXECUTE ex_sql;
    GET DIAGNOSTICS up_ok = ROW_COUNT;
    IF up_ok=0 THEN
    ex_sql='INSERT into pg (datum, x'||pos||') VALUES ('||c_heute||',1)';
    EXECUTE ex_sql;
    END IF;
    END;
    $$ LANGUAGE plpgsql;

    Danke.

Ähnliche Themen

  1. Frage PostGIS Funktion gesucht
    Von tme2525 im Forum PostGIS
    Antworten: 1
    Letzter Beitrag: 19.08.2010, 21:31
  2. PostgreSQL 8.3 Anleitung zur Installation unter Debian 5
    Von MAFI im Forum Sonstige Installationsprobleme
    Antworten: 10
    Letzter Beitrag: 19.08.2010, 11:11
  3. Antworten: 11
    Letzter Beitrag: 17.10.2009, 22:47
  4. Frage Erklärung gesucht
    Von symbiont im Forum Allgemeines
    Antworten: 4
    Letzter Beitrag: 30.07.2008, 21:15
  5. Sortieralgorithmus gesucht
    Von Gisman im Forum PostGIS
    Antworten: 5
    Letzter Beitrag: 14.06.2007, 12:29

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