Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
52 / 52 / 39
Регистрация: 15.11.2014
Сообщений: 696
MySQL

Непонятки с кодировкой в базе

18.10.2015, 12:25. Показов 1396. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем организовал отправку отзывов на php & sql. Вроде бы все норм, потому что для пользователей (на самой странице с отзывами) все отображается нормально, а в самой базе данных, данные пишутся непонятными иероглифами
например: елудченко.
Скажите пожалуйста, почему так может происходить и как это исправить?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.10.2015, 12:25
Ответы с готовыми решениями:

Непонятки с кодировкой
Система windows 10, почему-то делая все по указаниям урока у меня все равно возникают проблема с кодировкой. Ввожу латиницей все работает,...

Непонятки с кодировкой
Подскажите пожалуйста, есть документ pdf, я хочу скопировать из него текст в word 2013, но при копировании появляются кракозябры, помогите...

Непонятки с кодировкой
CodeGear Delphi 2007 for Win32 + MySQL 5.0.51 Подключаюсь к базе через TSQLConnection. Когда пытаюсь добавить в поле типа VARCHAR...

21
52 / 52 / 39
Регистрация: 15.11.2014
Сообщений: 696
22.10.2015, 20:33  [ТС]
Студворк — интернет-сервис помощи студентам
Я покажусь дотошным, но я хочу уточнить потому что редко работаю с mysql бд.
Цитата Сообщение от NEbO Посмотреть сообщение
то есть у обычного инта если указываете размер, по факту, это влияет только лишь на то, как колонка будет отображаться, если вы заходите в консольке -- это будет ее размер в таблице. не уверен, что вообще на что-то еще это влияет. максимальные и минимальные значения, которые можно хранить, задаются типом (tinyint, smallint, int, bigint), ну и флагом unsigned. И еще раз повторяю, что это касается только чисел. Строки, блобы, которые по факту могут иметь разный размер, действительно у них вы задаете размер в байтах, и если захотите положить более длинную строку, она урежется
То есть то что зададу я в поле для максимума ни как по сути не влияет на кол-во чисел в id (то есть максимум остается у bigint - 9 223 372 036 854 775 807)?
А 11 это кол-во памяти?
0
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
22.10.2015, 22:24
Лучший ответ Сообщение было отмечено Mikhail Shell как решение

Решение

Mikhail Shell, к сожалению, это мало чем связано с mysql, или конкретным языком программирования даже, а с архитектурами цифровых систем в целом, и конкретно x86, почему числа занимают 8, 16, 32, 64 бита (1, 2, 4, 8 байт соответственно).

Не по теме:

на x86_64 также могут быть доступны числа 128-разрядности, по крайней мере во многих CISC-процессорах некоторые команды частично(!) реализованы аппаратно, для работы с ними, типа умножения и деления, поэтому как правило за максимальную разрядность берется двойная разрядность. Тем не менее, бОльшая часть операций с ними реализуется программно. Однако, насколько мне известно, 128-разрядных чисел в mysql не предусмотрено


в случае int оно занимает всегда 4 байта, вне зависимости от того, что указано в скобках. В bigint -- 8.
и еще раз, в скобках вы указываете просто размер при выводе в консоли -- это просто небольшой хинт для того, чтобы удобнее было отображать, в некоторых случаях. вы там можете и 255 указать, int останется int-ом, он так и будет по прежнему занимать 4 байта, зато при выполнении запроса в mysql-ной консольке у вас будет выводиться куча пробелов перед этим числом (в случе с zerofill, я так понимаю, нулей, хотя не проверял). так же эта информация сохраняется в специальных таблицах в information_schema, и вы можете в своей программе как-то сами учитывать этот размер, если вам это нужно, но в остальных известных мне случаях это ни на что не повлияет.
А так, я не очень понимаю, если честно, что вас смущает или беспокоит. 2^32 записей это очень много и если у вас в задаче будет уже такое количество записей, вам придется придумывать, как это хранить, шардировать, реплицировать, потому что просто сами эти числа будут занимать больше 16г памяти. но ведь просто хранить числа в таблице -- это не самая классная идея, нужна еще какая-то дополнительная информация. Да еще и индексы будут занимать огого. В случае, когда вам нужно просто ассоциировать два числа друг с другом, на таких размерах таблиц неразумно использовать реляционку вообще -- для этого есть key-value хранилища. Самый максимум, который поместится у вас в одну запись, с 2х терабайтным винтом, будет составлять 512 байт, но если учесть метаинформацию и прочую лабуду типа индексов, и того, пожалуй, раза в полтора меньше.
Это я к тому, что если боитесь, что вам не хватит инта для id звписи, то вам в первую очередь нужно подумать, как это хранить, а как это в mysql-е реализовать -- это уже другой вопрос,и куда более простой, чем кажется.
Если вы разрабатываете под хайлоад, то не задавали бы таких вопросов, а раз нет, юзайте инт и не мучайте свой мозг

Не по теме:

да, кстати,

Цитата Сообщение от Mikhail Shell Посмотреть сообщение
mysql бд
mysql -- это не бд, а субд



Добавлено через 20 минут
да, и еще, если уж на то пошло,
Цитата Сообщение от Mikhail Shell Посмотреть сообщение
Этого числа хватит для хранения отзывов?
да, хватит. хотя на слово не верьте -- всегда можно посчитать.
предположим, вам каждую секунду отставляют по отзыву. в сутках 60*60*24 = 86400 секунд. делим 2^31 на 86400, получаем примерно 24855 суток, или 68 лет. да, для долгосрочного хайлоада типа какого-нибудь mail.ru этого не хватит, для хранения всех писем (там речь все же о гораздо большем количестве в секунду), но вы сами прикиньте, сколько вам придется раскручиваться и вложить средств, чтобы достигнуть даже 1 отзыва в секунду. я подозреваю, что и на этом форуме таблица записей хранится в виде обычного int-а, и в этом несложно убедиться, наведя курсор на "permalink" на каком-нибудь посте, вы видите его id-шник (маловероятно, что это что-то еще, да и движок можно надыбать в интернетах, подсмотреть). сейчас я там наблюдаю что-то около 8 млрд с копейками. даже простого int-а еще хватило бы на 250 таких же форумов. а если сделать его unsigned, то и на все 500.
а вот bigint-а хватило бы на все время существования вселенной, и даже больше, ну если верить вики. Аж на 41 вселенную хватило б, это я для случая, если раз в секунду пишут
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.10.2015, 22:24
Помогаю со студенческими работами здесь

Непонятки с кодировкой
Недавно появились вот такие вот кракозябры. Кодировка стоит utf-8 без BOM.

Qt и база IB непонятки с кодировкой
Имеется база IB, кодировка по умолчанию NONE. Раньше база работала в программе на делфи. Появилась необходимость изменить программу, а...

Библиотека PHP Simple HTML DOM. Непонятки с кодировкой - результат выдается в win-1251, а надо в utf-8.
Сам файл библиотеки в utf-8. Файл скрипта также в utf-8. В настройках библиотеки по умолчанию установлено utf-8. Страница, которую...

непонятки в базе данных
Здравствуйте помогите мне розобратса в базе данних... Я скачал Бразерною игру ... и мне нужно залить в базу даных базу игры.. как ето...

С кодировкой базы данных и кодировкой сайтом и кодировкой файла разобраться не могу
С кодировкой базы данных и сайтом файлом разобраться не могу. Я на своем сайте вывожу данные из другой mysql.... МММ сайт на win 1251 а...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru