Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«MySQL 5.0. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 10

Автор Π’ΠΈΠΊΡ‚ΠΎΡ€ Π“ΠΎΠ»ΡŒΡ†ΠΌΠ°Π½

β€’ ZEROFILL – Π΄Π°Π½Π½ΠΎΠ΅ свойство ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ значСния ΠΏΡ€ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½Ρ‹ нулями. Π¦Π΅Π»Ρ‹Π΅ числа Π΄ΠΎΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ нулями слСва Π² соотвСтствии с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ количСством ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Ρ†ΠΈΡ„Ρ€, дСсятичныС – слСва ΠΈ справа Π² соотвСтствии с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈ шкалой. НапримСр, Ссли столбСц ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΊΠ°ΠΊ DOUBLE(10,5) ZEROFILL, Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«12.23Β» отобраТаСтся ΠΊΠ°ΠΊ Β«0012.23000Β». ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΄Π°Π½Π½ΠΎΠ΅ свойство Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния, ΠΊΠ°ΠΊ ΠΈ свойство UNSIGNED. Π£ΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ свойство ZEROFILL ΠΌΠΎΠΆΠ½ΠΎ для Π»ΡŽΠ±Ρ‹Ρ… столбцов с числовым Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΡ€ΠΎΠΌΠ΅ BIT, BOOL (BOOLEAN) ΠΈ SERIAL.

β€’ AUTO_INCREMENT – Π΄Π°Π½Π½ΠΎΠ΅ свойство обСспСчиваСт Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΡŽ строк Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π² столбСц Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ (NULL) ΠΈΠ»ΠΈ Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ значСния ΠΎΠ½ΠΎ автоматичСски замСняСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ, Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ большС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ (нумСрация ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ начинаСтся с Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹, ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ свойства Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹). Π£ΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ это свойство ΠΌΠΎΠΆΠ½ΠΎ для Π»ΡŽΠ±Ρ‹Ρ… столбцов с числовым Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΡ€ΠΎΠΌΠ΅ BIT ΠΈ DECIMAL (DEC, NUMERIC, FIXED). Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ столбСц с Ρ‚Π°ΠΊΠΈΠΌ свойством, ΠΈ для Π½Π΅Π³ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ создан ΠΊΠ»ΡŽΡ‡ ΠΈΠ»ΠΈ индСкс (ΠΎΠ± этом Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ Β«ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ столбцы ΠΈ индСксы»).

Π”Π°Π»Π΅Π΅ рассмотрим Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΈ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠΈ Π΄Π°Ρ‚Ρ‹ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Для столбца, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π΄Π°Ρ‚Ρƒ ΠΈ/ΠΈΠ»ΠΈ врСмя, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….

β€’ DATE.

Π”Π°Ρ‚Π° Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Β«YYYY-MM-DDΒ», Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ Β«0000-01-01Β» Π΄ΠΎ Β«9999-12-31Β».

β€’ DATETIME.

Π”Π°Ρ‚Π° ΠΈ врСмя Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Β«YYYY-MM-DD HH:MM:SSΒ» Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ Β«0000–0101 00:00:00Β» Π΄ΠΎ Β«9999-12-31 23:59:59Β».

β€’ TIMESTAMP.

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΊΠ° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Β«YYYY-MM-DD HH:MM:SSΒ» Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ Β«1970-01-01 00:00:00Β» Π΄ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄Π°Ρ‚Ρ‹ Π² 2038 Π³. ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ строки Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² столбцС с Ρ‚ΠΈΠΏΠΎΠΌ TIMESTAMP автоматичСски устанавливаСтся Π΄Π°Ρ‚Π° ΠΈ врСмя выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого столбца Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ явно ΠΈΠ»ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅). Если Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠ° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΎΡΡ‚Π°Π²Π»ΡΠ»Π°ΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ строки, послС слова TIMESTAMP Π΄ΠΎΠ±Π°Π²ΠΈΠΌ свойство DEFAULT CURRENT_TIMESTAMP.

Если Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π΅ΡΡ‚ΡŒ нСсколько столбцов с Ρ‚ΠΈΠΏΠΎΠΌ TIMESTAMP, ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠ° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ автоматичСски проставляСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ…. Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… столбцов с Ρ‚ΠΈΠΏΠΎΠΌ TIMESTAMP, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ/ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ строки ΡƒΠΊΠ°ΠΆΠ΅ΠΌ для этого столбца Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ NULL, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски Π·Π°ΠΌΠ΅Π½Π΅Π½ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄Π°Ρ‚ΠΎΠΉ.

β€’ TIME.

ВрСмя Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Β«HH:MM:SSΒ» Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ Β«-838:59:59Β» Π΄ΠΎ Β«838:59:59Β».

β€’ YEAR, YEAR(2), YEAR(4).

Π“ΠΎΠ΄ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Β«YYYYΒ» ΠΈΠ»ΠΈ Β«YYΒ» (Ссли количСство Ρ†ΠΈΡ„Ρ€ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Β«YYYYΒ»). Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ – ΠΎΡ‚ 1901 Π΄ΠΎ 2155, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Β«YYYYΒ», ΠΈΠ»ΠΈ ΠΎΡ‚ 70 (соотвСтствуСт 1970 Π³.) Π΄ΠΎ 69 (соотвСтствуСт 2069 Π³.), Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Β«YYΒ».

ΠžΡ‚ΠΌΠ΅Ρ‡Ρƒ, Ρ‡Ρ‚ΠΎ MySQL воспринимаСт Π΄Π°Ρ‚Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ввСсти Π΄Π°Ρ‚Ρƒ с Π»ΡŽΠ±Ρ‹ΠΌ Π·Π½Π°ΠΊΠΎΠΌ прСпинания Π² качСствС раздСлитСля, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ [email protected]@31 23%59%59, ΠΈΠ»ΠΈ Π±Π΅Π· раздСлитСля, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 20071231235959. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, Ссли Π² столбСц с Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Ρ‚Ρ‹ ΠΈΠ»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ вносится символьноС ΠΈΠ»ΠΈ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ², MySQL автоматичСски ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² Π΄Π°Ρ‚Ρƒ ΠΈ/ΠΈΠ»ΠΈ врСмя.

Π—Π°Π²Π΅Ρ€ΡˆΠ°Ρ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, рассмотрим ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹.

Π‘Ρ‚ΠΎΠ»Π±Ρ†Π°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ тСкст, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….

β€’ CHAR(<ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ символов>) ΠΈΠ»ΠΈ NATIONAL CHAR(<ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ символов>).

Бимвольная строка фиксированной Π΄Π»ΠΈΠ½Ρ‹. Π’ Ρ‚Π°ΠΊΠΎΠΌ столбцС всСгда хранится ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ количСство символов, ΠΏΡ€ΠΈ нСобходимости Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ дополняСтся справа ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π΄Π°Ρ‚ΡŒ количСство символов ΠΎΡ‚ 0 Π΄ΠΎ 255. Если количСство символов Π½Π΅ Π·Π°Π΄Π°Π½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π΄Π»ΠΈΠ½Π° строки ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ – 1 символ.

Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… NATIONAL CHAR отличаСтся ΠΎΡ‚ CHAR Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ для столбцов с Ρ‚ΠΈΠΏΠΎΠΌ NATIONAL CHAR ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° UTF-8, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ для столбцов с Ρ‚ΠΈΠΏΠΎΠΌ CHAR ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡƒΡŽ MySQL.

β€’ VARCHAR(<МаксимальноС количСство символов>) ΠΈΠ»ΠΈ NATIONAL VARCHAR(<МаксимальноС количСство символов>).

Бимвольная строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹, содСрТащая Π½Π΅ Π±ΠΎΠ»Π΅Π΅ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ количСства символов. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ максимальноС количСство символов ΠΎΡ‚ 0 Π΄ΠΎ 65 535, Π½ΠΎ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 65 535 Π±Π°ΠΉΡ‚ΠΎΠ² Π² суммС для всСх столбцов Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с Ρ‚ΠΈΠΏΠΎΠΌ CHAR, VARCHAR, BINARY ΠΈΠ»ΠΈ VARBINARY. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ссли Π²ΠΎ всСй Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΎΠ΄Π½ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ (Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ символу соотвСтствуСт 1 Π±Π°ΠΉΡ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ KOI8-R, CP-866 ΠΈΠ»ΠΈ CP-1251), Ρ‚ΠΎ суммарноС количСство символов, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΈ описании этих столбцов, Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ 65 535. Если ΠΆΠ΅ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ UTF-8 (для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ сСрвСр MySQL выдСляСт Π΄ΠΎ 3 Π±Π°ΠΉΡ‚ΠΎΠ² Π½Π° символ), Ρ‚ΠΎ суммарноС количСство символов, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΈ описании этих столбцов, Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ 21 844 (Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π° мСньшС, Ρ‡Π΅ΠΌ для ΠΎΠ΄Π½ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΎΠΊ).

Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… NATIONAL VARCHAR отличаСтся ΠΎΡ‚ VARCHAR Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ для столбцов с Ρ‚ΠΈΠΏΠΎΠΌ NATIONAL VARCHAR ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° UTF-8, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ для столбцов с Ρ‚ΠΈΠΏΠΎΠΌ VARCHAR ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡƒΡŽ MySQL.

β€’ BINARY(<ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π±Π°ΠΉΡ‚ΠΎΠ²>)

Байтовая (бинарная) строка фиксированной Π΄Π»ΠΈΠ½Ρ‹. Π­Ρ‚ΠΎΡ‚ Ρ‚ΠΈΠΏ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ Ρ‚ΠΈΠΏΡƒ CHAR, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ строка содСрТит Π½Π΅ символы, Π° Π±Π°ΠΉΡ‚Ρ‹, ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ мСньшСй Π΄Π»ΠΈΠ½Ρ‹ дополняСтся справа Π½Π΅ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ, Π° Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌΠΈ Π±Π°ΠΉΡ‚Π°ΠΌΠΈ.

β€’ VARBINARY(<МаксимальноС количСство Π±Π°ΠΉΡ‚ΠΎΠ²>)

Байтовая (бинарная) строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Π­Ρ‚ΠΎΡ‚ Ρ‚ΠΈΠΏ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ Ρ‚ΠΈΠΏΡƒ VARCHAR, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ строка содСрТит Π½Π΅ символы, Π° Π±Π°ΠΉΡ‚Ρ‹.

β€’ TINYBLOB

Байтовая (бинарная) строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Максимальная Π΄Π»ΠΈΠ½Π° – 255 Π±Π°ΠΉΡ‚ΠΎΠ².

β€’ TINYTEXT

Бимвольная строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Максимальная Π΄Π»ΠΈΠ½Π° – 255 Π±Π°ΠΉΡ‚ΠΎΠ² (Π½Π΅ символов!).

...

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ для Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… TINYTEXT, TEXT, MEDIUMTEXT ΠΈΠ»ΠΈ LONGTEXT Π΄Π»ΠΈΠ½Π° значСния ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ количСством Π±Π°ΠΉΡ‚ΠΎΠ², Π° Π½Π΅ символов. Для ΠΎΠ΄Π½ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΎΠΊ (Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ KOI8-R, CP-866 ΠΈΠ»ΠΈ CP-1251) Π΄Π»ΠΈΠ½Π° значСния Π² Π±Π°ΠΉΡ‚Π°Ρ… ΠΈ Π² символах ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Π°. Однако для ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΎΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅ количСство символов Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ мСньшС, Ρ‡Π΅ΠΌ количСство Π±Π°ΠΉΡ‚ΠΎΠ². Π’Π°ΠΊ, Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ UTF-8 для кодирования символов английского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ 1 Π±Π°ΠΉΡ‚ Π½Π° символ, для русского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° – 2 Π±Π°ΠΉΡ‚Π° Π½Π° символ, поэтому максимальноС количСство символов русского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ввСсти Π² Ρ‚Π°ΠΊΠΎΠΉ столбСц, ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π² Π΄Π²Π° Ρ€Π°Π·Π° мСньшС, Ρ‡Π΅ΠΌ максимальноС допустимоС количСство Π±Π°ΠΉΡ‚ΠΎΠ² для этого столбца.

β€’ BLOB[(<МаксимальноС количСство Π±Π°ΠΉΡ‚ΠΎΠ²>)].

Байтовая (бинарная) строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Если количСство Π±Π°ΠΉΡ‚ΠΎΠ² Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ столбца ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ 65 535 Π±Π°ΠΉΡ‚Π°ΠΌΠΈ. Если количСство Π±Π°ΠΉΡ‚ΠΎΠ² ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Ρ‚ΠΎ создаСтся столбСц с Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… TINYBLOB, BLOB, MEDIUMBLOB ΠΈΠ»ΠΈ LONGBLOB: выбираСтся Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… с наимСньшим Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ, достаточным для хранСния этого количСства Π±Π°ΠΉΡ‚ΠΎΠ².

β€’ TEXT[(<МаксимальноС количСство символов>)].

Бимвольная строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Если количСство символов Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ столбца ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ 65 535 Π±Π°ΠΉΡ‚Π°ΠΌΠΈ. Если количСство символов ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Ρ‚ΠΎ создаСтся столбСц с Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… TINYTEXT, TEXT, MEDIUMTEXT ΠΈΠ»ΠΈ LONGTEXT: выбираСтся Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… с наимСньшим Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ, достаточным для хранСния этого количСства символов.

β€’ MEDIUMBLOB.

Байтовая (бинарная) строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Максимальная Π΄Π»ΠΈΠ½Π° – 16 777 215 Π±Π°ΠΉΡ‚ΠΎΠ².

β€’ MEDIUMTEXT.

Бимвольная строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Максимальная Π΄Π»ΠΈΠ½Π° – 16 777 215 Π±Π°ΠΉΡ‚ΠΎΠ².

β€’ LONGBLOB.

Байтовая (бинарная) строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Максимальная Π΄Π»ΠΈΠ½Π° – Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 4 294 967 295 Π±Π°ΠΉΡ‚ΠΎΠ² (4 Π“Π±Π°ΠΉΡ‚), Π² зависимости ΠΎΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° взаимодСйствия с сСрвСром MySQL ΠΈ доступных систСмных рСсурсов.

β€’ LONGTEXT.

Бимвольная строка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹. Максимальная Π΄Π»ΠΈΠ½Π° – Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 4 294 967 295 Π±Π°ΠΉΡ‚ΠΎΠ² (4 Π“Π±Π°ΠΉΡ‚), Π² зависимости ΠΎΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° взаимодСйствия с сСрвСром MySQL ΠΈ доступных систСмных рСсурсов.

β€’ ENUM(\'<Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1>\', \'<Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 2>\',…).

Π‘Ρ‚Ρ€ΠΎΠΊΠ°, содСрТащая Ρ€ΠΎΠ²Π½ΠΎ ΠΎΠ΄ΠΈΠ½ элСмСнт ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ списка. НапримСр, Ссли столбСц ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΊΠ°ΠΊ ENUM(\'a\',\'b\'), Ρ‚ΠΎ допустимыми значСниями этого столбца ΡΠ²Π»ΡΡŽΡ‚ΡΡ значСния a, b ΠΈ NULL (Π° Ρ‚Π°ΠΊΠΆΠ΅ пустая строка «», которая ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ вставки Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ значСния Π² Π΄Π°Π½Π½Ρ‹ΠΉ столбСц; ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ строк Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΈ ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‡ΡŒ Π² ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅ «Вставка ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… строк»). Π’ список Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎ 65 535 элСмСнтов.

β€’ SET(\'<Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1>\', \'<Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 2>\',…).

Π‘Ρ‚Ρ€ΠΎΠΊΠ°, содСрТащая любой Π½Π°Π±ΠΎΡ€ элСмСнтов ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ списка (Π² Ρ‚ΠΎΠΌ числС пустой). НапримСр, Ссли столбСц ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΊΠ°ΠΊ SET(\'a\',\'b\'), Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ значСния «» (пустая строка), a, b, a,b ΠΈ NULL. Π’ список Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎ 64 элСмСнтов. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ списка Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ запятых. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· элСмСнтов ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ столбца Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ элСмСнты ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ порядкС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ΠΈ пСрСчислСны Π² спискС. НапримСр, ΠΏΡ€ΠΈ вставкС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ a,b,a,b ΠΈ b,a ΠΎΠ½ΠΈ автоматичСски ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ a,b.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π² MySQL Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ символьного столбца. А ΠΈΠΌΠ΅Π½Π½ΠΎ, для столбцов с Ρ‚ΠΈΠΏΠΎΠΌ CHAR, VARCHAR, TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT, ENUM ΠΈ SET Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π΄Π°Ρ‚ΡŒ свойство CHARACTER SET <Имя ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ> ΠΈ/ΠΈΠ»ΠΈ COLLATE <Имя ΠΏΡ€Π°Π²ΠΈΠ»Π° сравнСния> (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ°Ρ… ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… сравнСния ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…Β»).