1
是否可以將參數值插入到插入的select語句中?試圖弄清楚這一點我還沒有成功。Mysql和PDO:插入選擇和參數
我明顯知道下面的查詢是錯誤的,但我不知道該從哪裏去。
查詢
INSERT INTO test
SELECT other.col1, other.col2, :somevalue
FROM other
是否可以將參數值插入到插入的select語句中?試圖弄清楚這一點我還沒有成功。Mysql和PDO:插入選擇和參數
我明顯知道下面的查詢是錯誤的,但我不知道該從哪裏去。
查詢
INSERT INTO test
SELECT other.col1, other.col2, :somevalue
FROM other
什麼您正試圖在語法上是有效的,並應能正常工作。除非目標表具有完全相同的列數,則INSERT
語句必須包含一個列列表:
INSERT INTO test (col1, col2, col3)
SELECT col1, col2, :somevalue
FROM other
注意這句法與PDO綁定參數的作品,因爲:somevalue
意味着是一個字符串文字。如果你一直希望:somevalue
是一個動態確定的列名稱而不是一個蜇,那不會按預期工作 - 你會得到一個文字字符串值而不是列名。
是':somevalue'打算成爲一個字符串文字而不是列名?換句話說,你正在做'SELECT col1,col2',一個'FROM other'字符串,或者你正在嘗試使用一個動態列名稱'SELECT col1,col2,unknowncol3 FROM other'? –
你可以用更具體的細節描述你正在選擇什麼,插入的結果應該是什麼? –
是的,:somevalue旨在成爲字符串文字,而不是列名稱。 – Ralph