Привет, друзья!
Занявшись просмотром кода разных модов, я обнаружил, что не все правильно, а точнее разумно используют возможности MySQL.
Итак, начнем.
К примеру, я часто вижу такую картину: Select * FROM accounts .. Первое, и ужасное это *. Как мне кажется, не особо разумно загружать все данные и пихать их в массив.
Почему? А представим, что у вас в бд лежит IMG размером 2 мб. Что, вы будете ее тащить пользователю? Загружать, чтобы потом ничего не сделать с ней?
Куда гораздо разумнее будет загрузка именно тех параметров, которые вам необходимы именно в этот момент.
Идем далее.
Еще я наблюдал такое, что в некоторых модах при сравнении пароля используется веденный текст и текст загруженный из бд помещенный в массив.
И это тоже делать не стоит. Опять же представим, что у вас сайт на PHP и пароль вы записываете в Cookie на винт пользователю.
Из этого места расходится много дорог. Такое как кража Cookie и прочее.
Итак, как же правильно будет сделать? Послать запрос примерно такого типа: select id form accounts where nickname = '%s' AND password = '%s',Vasya,123
А после чего, проверить количество полученных строк в результате запроса.
Идем далее[2].
То, над чем я долго смеялся, было обновление статы игрока через определенный промежуток времени.
Вы можете спросить: что смешного? Ответ прост. Опять-же это не просто неразумно, а глупо.
Ведь это обновление не имеет смысла. Гораздо лучше будет обновить отдельный элемент при взаимодействии с чем-то.
А при выходе, обновить информацию о здоровье и прочем.
Так же это относится не только к БД но и к обновлению 3d текстов и всего прочего.
Чуть отвлекаясь от общей темы, я хочу сказать: Используйте данное по мере необходимости.
P.S Я не могу сказать, для кого конкретно я писал эту тему. Но думаю, что хотя бы кому-то будет интересно.