2013-07-25 56 views
3

這是情況。我只知道表test_table的總列數,但不知道他們的名字(聽起來很奇怪,但它的真實性)。有沒有什麼辦法可以在某些ID(自動遞增主鍵)的基礎上爲所有列值編寫UPDATE Query?不知道列名更新表值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:但是你可以使用information_schema數據庫中獲取的列名.fetch-fields.php – cmorrissey

回答

4

不,這是不可能的。

SELECT 
    `ORDINAL_POSITION`, 
    `COLUMN_NAME` 
FROM `information_schema`.COLUMNS 
WHERE 
    `TABLE_SCHEMA` = $dbname 
AND 
    `TABLE_NAME` = $tablename 
ORDER BY `ORDINAL_POSITION`