From: | Ulrich Goebel <ml(at)fam-goebel(dot)de> |
---|---|
To: | pgsql-de-allgemein(at)postgresql(dot)org |
Subject: | Re: LibreOffice Base als Frontend - Problem mit boolean Feldern |
Date: | 2015-09-25 20:06:47 |
Message-ID: | 5605A957.1020100@fam-goebel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-de-allgemein |
Danke, so geht's!
Am 25.09.2015 um 19:49 schrieb Andreas Kretschmer:
> Ulrich Goebel <ml(at)fam-goebel(dot)de> wrote:
>
>> Kann ich in der DB dafür sorgen, dass der Wert "unknown" in "FALSE"
>> verändert wird?
>>
>> Meine Idee: einen Trigger definieren. Aber wie?
>
> So?
>
> test=# create table bla(id int, b bool);
> CREATE TABLE
> Time: 0,925 ms
> test=*# create or replace function set_false() returns trigger as
> $$begin new.b := false; return new; end;$$language plpgsql;
> CREATE FUNCTION
> Time: 0,413 ms
> test=*# create trigger trg1 before insert or update on bla for each row
> when (new.b is null) execute procedure set_false();
> CREATE TRIGGER
> Time: 0,402 ms
> test=*# insert into bla values (1, true);
> INSERT 0 1
> Time: 0,345 ms
> test=*# insert into bla values (2, null);
> INSERT 0 1
> Time: 0,287 ms
> test=*# insert into bla values (3, false);
> INSERT 0 1
> Time: 0,225 ms
> test=*# select * from bla;
> id | b
> ----+---
> 1 | t
> 2 | f
> 3 | f
> (3 rows)
>
>
>
>
>
> Andreas
>
--
Ulrich Goebel
Paracelsusstr. 120, 53177 Bonn
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Banck | 2015-09-26 12:53:10 | Re: LibreOffice Base als Frontend - Problem mit boolean Feldern |
Previous Message | Andreas Kretschmer | 2015-09-25 17:49:18 | Re: LibreOffice Base als Frontend - Problem mit boolean Feldern |