Цитата Сообщение от DeimoS Посмотреть сообщение
mysql_format существует только для одной цели - использовать спецификатор "%e", который экранирует данные. Так же можно использовать функцию mysql_escape_string, если данные требуется экранировать до форматирования запроса (либо просто вместо mysql_format+"%e").
Экранировать данные нужно тогда, когда их вводит игрок и когда данные не фильтруются изначально. Например, если входящие данные - это 100% число (ну ты обрабатываешь их через sscanf как число прежде, чем вставить в запрос), то экранировать данные не нужно. Так же если в данных 100% не может быть символов ' и \, то тоже можно не экранировать. Во всех остальных случаях экранировать данные нужно обязательно, иначе игрок сможет отправить SQL-инъекцию и, например, одним запросом удалить всю таблицу с аккаунтами.
Если данные не экранируются (запрос форматируется из проверенных данных) - используй обычный format.

"LIMIT" нужно использовать всегда, когда ты отправляешь запрос на выборку конкретного количества строк. И когда строка одна - это особенный случай.
В данном случае нужно выбрать всего одну строку, так как аккаунт один. MySQL могла бы сама оптимизировать этот запрос и подставить LIMIT, если бы выборка происходила по уникальному полю (гуглить "MySQL UNIQUE KEY"), но так как поле, скорее всего, не уникально (ибо "умельцы" SA-MP далеки от темы нормализации данных/оптимизации таблиц), то нужно указать ограничение вручную. Иначе получится так, что даже если MySQL найдёт нужный аккаунт среди одной из первых записей, она всё равно продолжит проверять все остальные записи, сверяя ники. Хотя это уже не будет требоваться.
Собственно, за инфой о MySQL следует идти на dev.mysql.com
Спасибо, теперь буду чуть умнее))