Íàâèãàöèÿ

Ïîèñê ïî Ñàéòó

Ïàðòíåðû

Ñàìîó÷èòåëü. Êíèãè.

Ñòàòèñòèêà

Óðîê 5.12: Âûáîð ïðàâèëüíîãî òèïà äëÿ ñòîëáöà MySQL

Ãëàâíàÿ Ñòðàíèöà » Êíèãè ïî PHP » MySQL óðîêè äëÿ íà÷èíàþùèõ ñ íóëÿ » Âûáîð ïðàâèëüíîãî òèïà äëÿ ñòîëáöà

À âîò òåïåðü íà÷èíàåòñÿ ñàìîå ñëîæíîå. Äëÿ ÷åãî ìû ïðèâåëè ñòîëüêî ÷èñòî ñïðàâî÷íîé èíôîðìàöèè ñ ïîäðîáíûì óêàçàíèåì âîçìîæíûõ íåîæèäàííîñòåé? À äëÿ òîãî, ÷òîáû âû òî÷íî çíàëè î êàæäîì Òèïå, ÷òî îí ñîáîé ïðåäñòàâëÿåò. Òåïåðü ïðè ïîñòðîåíèè òàáëèöû âû ìîæåòå ñàìè ïðèêèíóòü, êàêîé èìåííî òèï íóæåí.

Äëÿ íàèáîëåå ýôôåêòèâíîãî èñïîëüçîâàíèÿ ïàìÿòè, ïîïðîáóéòå èñïîëüçîâàòü íàèáîëåå ïîäõîäÿùèé òèï âî âñåõ ñëó÷àÿõ. Íàïðèìåð, åñëè öåëî÷èñëåííûé ñòîëáåö áóäåò èñïîëüçîâàòüñÿ äëÿ çíà÷åíèé â äèàïàçîíå ìåæäó 1 è 99999, ëó÷øèì ÿâëÿåòñÿ òèï MEDIUMINT UNSIGNED.

Òî÷íîå ïðåäñòàâëåíèå äåíåæíûõ âåëè÷èí îáû÷íî ÿâëÿåòñÿ ïðîáëåìîé.  MySQL âû äîëæíû èñïîëüçîâàòü òèï DECIMAL. Ýòî çíà÷åíèå ñîõðàíåíî êàê ñòðîêà, à íå ÷èñëî, òàê ÷òî íèêàêîé ïîòåðè òî÷íîñòè íå äîëæíî ïðîèçîéòè. Åñëè òî÷íîñòü íå ñëèøêîì âàæíà, òèï DOUBLE òàêæå ìîæåò áûòü äîñòàòî÷åí äëÿ õðàíåíèÿ ôèíàíñîâûõ äàííûõ.

Äëÿ âûñîêîé òî÷íîñòè, âû ìîæåòå âñåãäà ïðåîáðàçîâûâàòü äàííûå â ôèêñèðîâàííûé òèï BIGINT. Ýòî ïîçâîëÿåò äåëàòü âñå âû÷èñëåíèÿ ñ öåëûìè ÷èñëàìè è ïðåîáðàçîâûâàòü ðåçóëüòàòû îáðàòíî â çíà÷åíèÿ ñ ïëàâàþùåé çàïÿòîé òîëüêî òîãäà, êîãäà ýòî íåîáõîäèìî.