我正在遵循此線程中給出的示例為什么 insert 不起作用并且在 postresql 上不輸出任何錯誤?當我嘗試使用此選項在數據庫內插入多個值時;我遇到此錯誤“錯誤:“數組”第 2 行或附近的語法錯誤:VALUES 數組..”請問有什么幫助嗎?下面是代碼:? ? ? ?…….? ? ? ?"INSERT INTO people( mom, non, ooo)? ? ? VALUES?? ? ($1,? ?$2,? $3),?? ?($4,? ?$5,? $6),? ?($7,? ?$8,? $9),? ?($10, $11, $12)? ON CONFLICT (mom) DO NOTHING";? ?$rcon = pg_query_params($connection, $ins,?? ?Array(? ?[ $mom ,$non,? $kooo],? ?[ $mom 1,$non1,? $kooo1],? ?[ $mom 2,$non2,? $kooo2],? ?[ $mom 3,$non3,? $kooo3]? ? ? ?)? ?);? ?if(!$rcon){? ?echo pg_last_error($connection);? ? ? ?}else{? ? ? ? ? ? echo "Record added to database</br>"; //success confirmation? ? ? }? This gives this error;? ERROR: bind message supplies 4 parameters, but prepared statement "" requires 12?phpPostgreSQLsql插入
2 回答

墨色風雨
TA貢獻1853條經驗 獲得超6個贊
您正在為參數綁定提供數組的數組。試試這個:
$rcon = pg_query_params($connection, $ins,
[
$mom, $non, $kooo,
$mom1, $non1, $kooo1,
$mom2, $non2, $kooo2,
$mom3, $non3, $kooo3,
]
);

守候你守候我
TA貢獻1802條經驗 獲得超10個贊
我不明白數組與你的問題有什么關系。據推測,您想要插入多行。那將是:
INSERT INTO people( mom, non, ooo)
VALUES
($1, $2, $3),
($4, $5, $6),
($7, $8, $9),
($10, $11, $12)
ON CONFLICT (mom) DO NOTHING
- 2 回答
- 0 關注
- 127 瀏覽
添加回答
舉報
0/150
提交
取消