Zaɓi mafi ƙanƙantar type da zai iya riƙe kowace darajar da za ka taɓa adanawa daidai. Type mai kyau yana ceton disk, yana rage indexes, kuma yana hana lalacewar bayanai a shiru.
Zaɓi mafi ƙanƙantar type da zai iya riƙe kowace darajar da za ka taɓa adanawa daidai. Type mai kyau yana ceton disk, yana rage indexes, kuma yana hana lalacewar bayanai a shiru.
INT (bytes 4) ga yawancin ids; BIGINT (bytes 8) kawai lokacin da ka wuce kimanin biliyan 2.1 da gaske.DECIMAL(10,2) ga kuɗi — kada ka yi amfani da FLOAT/DOUBLE, waɗanda ke zagaye a binary kuma suna rasa cents.VARCHAR(n) ga rubutu mai iyaka (sunaye, imel); n iyaka ce, adanawa kawai abin da ka yi amfani da shi.TEXT ga manyan blobs (labarai) — ana adana shi a wajen page kuma ba zai iya samun default ba; kada ka yi amfani da shi ga gajerun dabi'un da kake tacewa a kansu.DATETIME (babu timezone, bytes 8) da TIMESTAMP (an juya zuwa UTC, bytes 4, iyakar ~2038).CREATE TABLE payments (
id BIGINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
amount DECIMAL(10,2) NOT NULL, -- exact money, not FLOAT
currency CHAR(3) NOT NULL, -- always 3 chars -> fixed CHAR
note VARCHAR(255), -- bounded, indexable
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
-- Pitfall: the default SQL mode rejects bad values (good) --
INSERT INTO payments (amount) VALUES ('abc'); -- ERROR 1366, not silently 0
FLOAT ga kuɗi.VARCHAR(255) ko'ina saboda al'ada — manyan keys suna kumburta indexes.UNSIGNED a kan ids/ƙidaya waɗanda ba za su taɓa zama korau ba (yana ninka kewayon tabbatacce).Data types su ne shawarar daidaito da aiki mafi arha da za ka yanke, kuma mafi wahalar canzawa daga baya — types masu ƙunci da ainihi suna sa indexes su zama ƙanana kuma suna dakatar da munanan bayanai a ƙofa kafin su zama bug a production.
Ɗakin karatu na tambayoyin hira na IT tare da amsoshi cikakke — daga Junior zuwa Senior.
Ba da Gudummawa