Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

[Frage] to_char

Dieses Thema im Forum "PostgreSQL" wurde erstellt von Kampfgummibaerlie, 13 Juni 2017.

  1. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    Bin heute Morgen darüber gestoßen, dass der Begriff in dieser Programmiersprache "to_char" bedeutet, um das Format in gewissen Maßen zu verändern.

    Ich scheitere nur daran, den Constraint entsprechend zu setzen.

    Hier meine bisherigen Codes:

    1.: Datenbank erstellen:
    Code:
    create database Testerei;
    
    2.: Tabelle mit gesamten Datum erstellen:
    Code:
    create table Cast_Daten (Datum date);
    
    3.: Constraint hinzufügen:
    Code:
    ALTER TABLE Cast_Daten ADD CONSTRAINT keine_Feiertage CHECK (((to_char(datum, 'DD,MM')))!=24.12.);
    
    Bei Punkt 3 gelingt es mir zwar, aber er lässt trotzdem den 24.12. im Jahre X eintragen...

    Was mache ich im Constraint falsch? Wäre sehr dankbar für Hilfe ;)
    Außer, es kommt ein Vorschlag, wie ich die Feiertage anders ausschließen könnte.

    EDIT: guten Morgen :D
     
  2. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    teilweise gelöst, bin nur unzufrieden damit, dass ich die ganzen invaliden Daten "verkehrt" eingeben muss ;)


    Constraint:
    Code:
    alter table daten add constraint keine_feiertage_b CHECK (to_char(datum, 'DD.MM.') != '02.01.');
    
    Test1:
    Code:
    INSERT INTO public.daten(
       datum) VALUES ('2024.12.24');
    
    ERROR:
    ERROR: new row for relation "daten" violates check constraint "keine_feiertage_b" DETAIL: Failing row contains (2024-12-24). ********** Error ********** ERROR: new row for relation "daten" violates check constraint "keine_feiertage_b" SQL-Status: 23514 Detail: Failing row contains (2024-01-02).

    Test2:
    Code:
    INSERT INTO public.daten(
       datum) VALUES ('2017.12.24');
    
    ERROR:
    ERROR: new row for relation "daten" violates check constraint "keine_feiertage_b" DETAIL: Failing row contains (2024-12-24). ********** Error ********** ERROR: new row for relation "daten" violates check constraint "keine_feiertage_b" SQL-Status: 23514 Detail: Failing row contains (2024-01-02).

    Habe das Ganze ewig mit "DD,MM" probiert, aber ja, ging nicht xD

    Werde ein bisschen weiterstudieren, aber ich könnte damit leben, das Ganze "verkehrt" anzugeben, sprich im Format YY.MM.DD
    Wäre auch bei diesem Problem auf Hilfe sehr erfreut :D

    EDIT: Habe die teilweise falschen Error-Meldungen hier rein, ich glaube,
     
    Zuletzt bearbeitet: 13 Juni 2017
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden