Вопрос о sizeof() -
Crystal_Speed - 15.11.2011
Ребят, драсте ещё раз.
Меня озадачил вопрос, как можно вернуть sizeof из таблицы MySQL?
Мои догадки ведут меня на создание нового паблика который получает кол-во строк из таблицы и возвращает их, прально?
Допустим, for(new i = 0; i < sizeof(GetMysqlRows(tablename)); i++) - будет ли работать данная функция?
tablename - название таблицы.
Re: Вопрос о sizeof() -
CraftMan - 15.11.2011
только намекну... помучий, возможно это совсем не то, покажи на примере что ты хочешь!!
Re: Вопрос о sizeof() -
Crystal_Speed - 15.11.2011
я уже сделал что то подобное
Код:
public GetMysqlNumRows(table[])
{
new query[64];
format(query,sizeof(query),"SELECT * FROM %s",table);
if (samp_mysql_num_rows()==0)
{
return 0;
}
else
{
return samp_mysql_num_rows();
}
}
на работоспособность не проверял ещё. Иду в правильном направлении?
Re: Вопрос о sizeof() -
Serafim_sd - 15.11.2011
SELECT COUNT(*) FROM %s
Re: Вопрос о sizeof() -
Crystal_Speed - 15.11.2011
Спасибо серафим, так будет быстрее?
Re: Вопрос о sizeof() -
Stepashka - 16.11.2011
Quote:
Originally Posted by Serafim_sd
SELECT COUNT(*) FROM %s
|
только наверно все таки
SELECT COUNT(*) as count FROM %s иначе замучаются потом получать поле
Re: Вопрос о sizeof() -
EvgeN 1137 - 16.11.2011
Quote:
Меня озадачил вопрос, как можно вернуть sizeof из таблицы MySQL?
|
sizeof функция компилятора, которая определяет размер указанного массива и при компилировании это sizeof заменяется на цифру - размер массива. Если размеры массива не указаны, например,
pawn Код:
public OnPlayerText(playerid, text[])
, то попыка заюзать sizeof(text) выдаст ошибку. Чтобы узнать размер массива во время работы мода, надо юзать strlen()
Edit: ах, да. strlen возвращает не максимальный размер самого массива, а размер массива, то есть на сколько он заполнен
Re: Вопрос о sizeof() -
Stepashka - 16.11.2011
Quote:
Originally Posted by EvgeN 1137
Чтобы узнать размер массива во время работы мода, надо юзать strlen()
|
strlen не определяет размер массива, она определяет длину строки в массиве. Но с учетом того что передаваемая строка обычно равна длине массива, многие используют данную функция неправильно.
Re: Вопрос о sizeof() -
EvgeN 1137 - 16.11.2011
Quote:
Originally Posted by Stepashka
strlen не определяет размер массива, она определяет длину строки в массиве. Но с учетом того что передаваемая строка обычно равна длине массива, многие используют данную функция неправильно.
|
я уже это написал в своём отредактированном посте... Так что лучше взять массив побольше (логически подумать, какой будет максимальный размер таблицы), туда загрузить таблицу из MySQL и вычесть размер strlen'ом
P.S. я в MySQL дуб, так что мой текст может быть бредом
Re: Вопрос о sizeof() -
Stepashka - 16.11.2011
Quote:
Originally Posted by EvgeN 1137
я уже это написал в своём отредактированном посте... Так что лучше взять массив побольше (логически подумать, какой будет максимальный размер таблицы), туда загрузить таблицу из MySQL и вычесть размер strlen'ом
P.S. я в MySQL дуб, так что мой текст может быть бредом
|
решение написано выше, мог не утруждать себя последним постом.