Вы могли сделать это арифметически, не используя строку:
sum = 0;
while (n != 0) {
sum += n % 10;
n /= 10;
}
Вы можете использовать DESCRIBE :
DESCRIBE my_table;
Или в более новых версиях вы можете использовать INFORMATION_SCHEMA :
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'my_database' AND TABLE_NAME = 'my_table';
Или вы можете использовать SHOW COLUMNS :
SHOW COLUMNS FROM my_table;
Функция mysql_list_fields
может вас заинтересовать; но, как указано в руководстве:
Эта функция устарела. это предпочтительно использовать
mysql_query ()
для вместо этого выполните оператор SQLSHOW COLUMNS FROM table [LIKE 'name']
.
Если хотите, также есть следующее:
mysql_query('SHOW COLUMNS FROM tableName');
Функция MySQL описать таблицу должен доставить вас туда, куда вы хотите (введите имя вашей таблицы вместо "table"). Вам придется немного проанализировать вывод, но это довольно просто. Насколько я помню, если вы выполните этот запрос, функции доступа к результатам запроса PHP, которые обычно дают вам пару ключ-значение, будут иметь имена столбцов в качестве ключей. Но прошло много времени с тех пор, как я использовал PHP, так что не держите меня за это. :)
Вы также можете проверить mysql_fetch_array ()
, например:
$rs = mysql_query($sql);
while ($row = mysql_fetch_array($rs)) {
//$row[0] = 'First Field';
//$row['first_field'] = 'First Field';
}
Следующие операторы SQL почти эквивалентны:
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'tbl_name'
[AND table_schema = 'db_name']
[AND column_name LIKE 'wild']
SHOW COLUMNS
FROM tbl_name
[FROM db_name]
[LIKE 'wild']
Ссылка: INFORMATION_SCHEMA COLUMNS