Názory ke článku Přehled datových typů v MySQL
31. 7. 2007
Zároveň také platí pravidlo, že když do sloupce s atributem AUTO_INCREMENT vkládáte hodnotu NULL , tak je nahrazena následujícím číslem předcházejícího řádku (pokud je tedy v předcházejícím řádku číslo 55, následujícímu řádku bude přiřazeno číslo 56)
No to bych netvrdil protože to nebude platit pokud se z DB smaže poslední zaznam. Smažu záznam s ID 55 takže poslední řádek bude mít ID 54 a ted vložim nový řádek a bude mít ID 56. Takže ten tvůj text je trochu zavádějící vzhledem k tomu, že to nemusí platit vždy.
VARCHAR [(M)]
Použití: řetězec pevně dané délky dlouhý 0 až M (M musí být celé číslo v rozmezí od 0 do 255)
Možná by bylo také záhodno podotknout, že v dnešní dobe už to není tak uplne pravda viz. manual mysql :
Values in VARCHAR columns are variable-length strings. The length can be specified as a value from 0 to 255 before MySQL 5.0.3, and 0 to 65,535 in 5.0.3 and later versions.
ConnectiCut napsal:
#Zároveň také platí pravidlo, že když do sloupce s atributem AUTO_INCREMENT vkládáte hodnotu NULL , tak je nahrazena následujícím číslem předcházejícího řádku (pokud je tedy v předcházejícím řádku číslo 55, následujícímu řádku bude přiřazeno číslo 56)
##
##
##
#No to bych netvrdil protože to nebude platit pokud se z DB smaže poslední zaznam. Smažu záznam s ID 55 takže poslední řádek bude mít ID 54 a ted vložim nový řádek a bude mít ID 56. Takže ten tvůj text je trochu zavádějící vzhledem k tomu, že to nemusí platit vždy.
Ano, to je samozřejmě pravda, v článku jsem ale o vymazávání a následném přiřazování ID nepsal, to potom nastává jiná situace, ID je jedinečné a neopakovatelné...
ConnectiCut napsal:
#VARCHAR [(M)]#
##
##
##
#Použití: řetězec pevně dané délky dlouhý 0 až M (M musí být celé číslo v rozmezí od 0 do 255)
##
##
##
#Možná by bylo také záhodno podotknout, že v dnešní dobe už to není tak uplne pravda viz. manual mysql :#
##
##
##
#Values in VARCHAR columns are variable-length strings. The length can be specified as a value from 0 to 255 before MySQL 5.0.3, and 0 to 65,535 in 5.0.3 and later versions.#
##
##
##
#
Ano to je pravda, čerpal jsem z knihy kde nebyla zachycena nejnovější verze MySQL, ale když budu detailsta, tak na kolika serverech je k dispozici nejnovější verze MySQL?
tak na kolika serverech je k dispozici nejnovější verze MySQL?
Pokud jde o MySQL >5.0.3, tak na většině placených webhostinzích je již dostupná.
1. 8. 2007
Ano, to je samozřejmě pravda, v článku jsem ale o vymazávání a následném přiřazování ID nepsal, to potom nastává jiná situace, ID je jedinečné a neopakovatelné...
No stim bych si taky dovolil tak trochu nesouhlasit smazu zaznam s ID 55 poslední ID mam 54 vlozim zaznam a ten má ID 56, ale co kdyz to udelam jinak např takhle :
Smazu zaznam s ID 55
Takze poslední záznam má ID 54
Spustim ALTER TABLE tabulka AUTO_INCREMENT = 55
Vložim novej záznam a ejhle novej záznam má ID 55
1. 8. 2007
na takováto témata by se neměli psát články, je to zbytečnost, když je to přímo u zdroje http://dev.mysql.com/doc/refman/4.1/en/data-types.html, každý i podprůměrný pogramátor MUSÍ zvládat angličtinu.
k autorovi: jaký je rozdíl mezi středně velkým celým číslem a bežně velkým celým číslem? :)
Příkaz ALTER TABLE tabulka AUTO_INCREMENT = 55 je ale zásah do původního incrementovani a nemá s ním tedy nic společného... Také by mne zajímalo, jestli toto v praxi používáte :-)
Článek je určen začátečníkům, kteří právě angličtinu neovládají.
"termíny" středně velké celé číslo a běžně velké celé číslo jsem čerpal s literatury uvedené ve zdroji článku ;-)
1. 8. 2007
ted sis teda naběhl, tak proč ty termíny nevysvětlíš, když už ses rozhodl psát o takové elementární věci, na které je zbytečné psát články? začátečníky by to určitě zajímalo.. :)
to začátečníci: učte se angličtinu pokud chcete být dobrými programátory
1. 8. 2007
Příkaz ALTER TABLE tabulka AUTO_INCREMENT = 55 je ale zásah do původního incrementovani a nemá s ním tedy nic společného...
Nemohu si pomoct, ale opět nemohu souhlasit. Má stím společné téměř všechno. Tento příkaz upravuje pouze hodnotu dalšího ID to je vše a to ješte pouze za určitých pravidel. Lze nastavit pouze ID > MAX(ID).
Také by mne zajímalo, jestli toto v praxi používáte :-)
Bězne to v praxi nepoužívám, ale to ješte neznamená, že to nefunguje :)
článek je velmi užiteřný, běž si laskavě rýpat do někoho jiného.
sice jej nepotřebuji, vzhledem k tomu, že to znám, ale jak je někdy server mysql pomalý nejde vubec nic na nem hledat a studovat.
Tak to vemu tedy do detailů:
středně velká celá čísla: Rozsah čísel: −8388608 až 8388607 nebo 0 až 16777215 pro UNSIGNED
běžně velká celá čísla: Rozsah čísel: −2147483648 až 2147483647 nebo 0 až 42949667295 pro UNSIGNED
ty pojmy jsou pouze "pracovní" není to žádný definovaný "termín", a vysvětlovat je tedy, myslím, není potřeba, když hned pár řádků pod daným pojmem je objasněno, jakých hodnot může daný typ nabývat..
A není to náhodou tak, že když dáte příkaz ALTER TABLE tabulka AUTO_INCREMENT = 55, nastaví se nový auto increment s počáteční hodnotou 55?
2. 8. 2007
to Mautinek: to je v článku, jestli to nevíš :), tvoje "pracovní pojmy" mi přijdou zavádějící a právě proto tyto elementární věci hledám v dokumentaci, což také doporučuju všem ostatním..
to hrach: pokud to nevíš, tak si dokumentaci můžeš stáhnout http://dev.mysql.com/doc/
No právě o to jde, že to je v článku, takže už to nemusím vysvětovat co to znamená :-) a nevím, proč by to mělo být zavádějící, je to asi tak zavádějící jako když si v PHP pojmenuješ např. třídu nebo fci. ;-) nevidím v tom problém
pěkná věc a proč to stahovat když to nepotřebuju? a proč vubec lezt na ten jejich server? nepotřebuju. ;) díky
3. 8. 2007
to Mautinek: zbytečný článek, můj názor, konec
to hrach: jasně místo do dokumentace si přečteš "články" tomuto podobné, jen si to stáhni, třeba ti to prospěje :)
3. 8. 2007
Mautinek napsal: A není to náhodou tak, že když dáte příkaz ALTER TABLE tabulka AUTO_INCREMENT = 55, nastaví se nový auto increment s počáteční hodnotou 55?
Ne viz manuál MySQL :
To change the value of the AUTO_INCREMENT counter to be used for new rows
4. 8. 2007
timestamp ma stary zapis. od verzie 4.1 sa rovnaky tvar ako datetime 1 dobuducna casova zona.
prosil by som to opravit.
25. 1. 2008
INT [(M)]
Použití: běžně velká celá čísla
Atributy: AUTO_INCREMENT, UNSIGNED, SIGNED, ZEROFILL
Rozsah čísel: −2147483648 až 2147483647 nebo 0 až 42949667295 pro UNSIGNED
Výchozí hodnota: NULL, pokud může být sloupec NULL; 0 je-li NOT NULL
Místo v paměti: 4 bajty
Pravděpodobně jenom překlep - pro unsigned int je maximální hodnota 2^32 - 1
a to je
4294967295
a ne
42949667295
Díky za opravu.
To J.N.: ano je to pouze překlep, děkuji za upozornění, opraveno.
10. 5. 2011
Proč článek obsahuje rekurzivní definice? Úžasné že se máme zamyslet nad tím jak budem co využívat, ale článek v tom vůbec nepomůže... BLOB je "normální hodnota BLOB", TEXT je "normální hodnota TEXT"... absurditě článku by pomohlo ještě napsat že INT jsou normální čísla typu INT...
8. 8. 2012
Článek jsem našel, při hledání datových typů v mysql - hledám používané jméno pro boolean (nebo zda to není toto), bohužel tento článek neobsahuje nic o tom že by daný datový typ existoval...
12. 1. 2014
Ahoj,
díky za nejenom tenhle článek, ale spíše celý web. Dlouho jsem se plácal v programování obecně, měl sem nějaké knížky, ale ty mi přišli že jsou pro mě totálně nesrozumitelný...tady se mi to zdá (aspoň pro mě) psaný "normálním" jazykem - tzn. srozumitelně. Je dost vlastně celkově jednoduchý programovat, akorát jde to, někde si sehnat kvalitní učivo a potom hlavně práci, kde se tomu budu věnovat...nemáte někdo nějaké osvědčené agentury, které se tím zabývají? Zkoušel jsem psát sem: http://itprace-nemecko.cz/ ale nevím, jak to dopadne... :)