not null = nullable true?

Werbung:

akretschmer

Datenbank-Guru
Beiträge
10.014
Hallo,

in diesem Bild:



müsste dort nicht nullable = false stehen für die Spalte Name?

Wieso sollte das so sein? Ein Default-Wert hat nix mit NULL zu tun:

Code:
test=# create table newuser(t1 text not null default 'xxx', t2 text default 'yyy');
CREATE TABLE
Time: 278,653 ms
test=*# insert into newuser values (NULL, NULL);
ERROR:  null value in column "t1" violates not-null constraint
DETAIL:  Failing row contains (null, null).
Time: 0,294 ms
test=*# insert into newuser values ('not null', NULL);
INSERT 0 1
Time: 0,342 ms
test=*# insert into newuser (t2) values (NULL);
INSERT 0 1
Time: 0,185 ms
test=*# select * from newuser ;
  t1  | t2
----------+----
 not null |
 xxx  |
(2 rows)

Time: 0,286 ms
 

newuser

Benutzer
Beiträge
12
Entschuldige bitte, die grüne Markierung war leider schon vorher im Bild.
Das was du zeigst leuchtet ein.

Was ich eigentlich fragen wollte ist ob in der Tabellenansicht -also der untere Teil der Grafik- aus dem "SQL Datenbank Tool" für die Spalte Name NULLABLE=NO stehen müsste?
 

akretschmer

Datenbank-Guru
Beiträge
10.014
Entschuldige bitte, die grüne Markierung war leider schon vorher im Bild.
Das was du zeigst leuchtet ein.

Was ich eigentlich fragen wollte ist ob in der Tabellenansicht -also der untere Teil der Grafik- aus dem "SQL Datenbank Tool" für die Spalte Name NULLABLE=NO stehen müsste?

Ähm, einklich ja. Kannst es ja mit Photoshop korrigieren ;-)
 
Werbung:

LeaCrow

Benutzer
Beiträge
9
wenn nicht "NOT NULL" steht, also nichts angegeben ist, darf man NULLs einfügen. Das muss nicht explizit angegeben werden.
 
Oben