2013-07-25 2 views
3

Вот ситуация. Я просто знаю общее количество столбцов, таблица test_table имеет, но не знает их имен (звучит странно, но верно). Есть ли способ написать UPDATE Query для всех значений столбца на основе некоторого идентификатора (первичный ключ с автоматическим добавлением)?Значение таблицы UPDATE без знания имен столбцов PHP

Чтобы добавить строку в этой таблице, я сделал следующее, который работает, но не имеют понятия, как это сделать для UPDATE:

$newCols = $_POST['newRowCols']; 
$query = "INSERT INTO test_table VALUES "."("."NULL"; 
foreach($newCols as $col) 
{ 
$query .= ",'$col'"; 
} 
$query.=")"; 
mysqli_query($con,$query); 

Спасибо.

+2

Вы можете использовать mysqli_fetch_fields() на выбор, чтобы получить поля http://php.net/manual/en/mysqli-result .fetch-fields.php – cmorrissey

ответ

4

Нет, это невозможно. Но вы можете получить имена столбцов с помощью information_schema базы данных:

SELECT 
    `ORDINAL_POSITION`, 
    `COLUMN_NAME` 
FROM `information_schema`.COLUMNS 
WHERE 
    `TABLE_SCHEMA` = $dbname 
AND 
    `TABLE_NAME` = $tablename 
ORDER BY `ORDINAL_POSITION` 
Смежные вопросы