Diskuze: Jazyk SQL - nefunguje modifikátor DEFAULT a výčtový typ ENUM
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 7 zpráv z 7.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
CREATE TABLE uzivatele(
ID int AUTO_INCREMENT PRIMARY KEY,
jmeno varchar(60),
prijmeni varchar(60),
skupina char(1) default 'A'
);
U rôznych DB sa to môže mierne líšiť, pozri trebárs na https://www.w3schools.com/…_default.asp aké sú rozdiely.
Ten enum si pamätám zo školy, že sme nemali nejako extra používať ale myslím že sa to definuje takto:
alter table uzivatele modify skupina enum ('A', 'B', 'C'); -- bez toho char(1)
Na stackowerflow som našiel niečo takéto už pri vytváraní tabuľky:
CREATE TABLE enum_test (
enum_fld ENUM('Yes', 'No') DEFAULT 'No' -- všimni si že sa neudáva typ stĺpca
);
A ten druhý příkaz nejspíš neprochází proto, že tam používáš dva typy - char a enum. Takže správně nejspíš
CREATE TABLE uzivatele(
ID int AUTO_INCREMENT PRIMARY KEY,
jmeno varchar(60),
prijmeni varchar(60),
Skupina ENUM('A','B','C') DEFAULT 'A'
);
Tak on se udává typ, to je ten enum A předběhl jsi mě
Aha, vidíš, tak som sa aj ja niečo naučil Ale lepšie si mu to napísal.
Díky moc, co se týká ENUM, mělo mě to napadnout - vím, že ENUM je zvláštní datový typ, ale jak jsem do toho koukal dlouho a stále dokola a s MySQL začínám, vůbec mi nedošlo, že tam mám vlastně dva datové typy....
Co se týká default bez závorek, zkouším to a funguje to, i když si myslím, že bez zárovek už jsem to zkoušel ještě než jsem sem psal a nešlo to, ale to nevadí, hlavní je, že to již funguje...
Díky moc všem za rychlé reakce a za rady, které pomohly
Zobrazeno 7 zpráv z 7.