我試圖使用odbc_prepare和odbc_execute語句像這樣編寫一個查詢:
$query = 'SELECT * FROM TABLE WHERE names IN (?) AND age < ?';
$names = "Joe, John, Billy";
$age = 21;
$result = odbc_prepare($this->connection, $query);
odbc_execute($query, array($names, $age));
當然,由於某種原因,這是行不通的,我已經嘗試了幾種我的$名稱變量格式的變化。任何幫助將不勝感激,因爲我一直無法找到使用odbc_prepare和WHERE IN子句的查詢的任何示例。
我使用OpenEdge 10.2A odbc驅動程序連接到Progress數據庫。
如果我單獨它,你提出,將表明,我將3個變量傳遞給它,而不僅僅是一個。我已閱讀文檔,我的理解是,您需要一次將所有變量傳遞給一個數組,所以如果您有一個查詢具有WHERE名稱=?和年齡<?你可以傳遞數組(「Joe」,「21」)來找到所有Joe的21以下。 –
因此,你想三次分別執行語句嗎? – grid
也許一個更好的例子是這樣的: 'SELECT * FROM TABLE WHERE name IN(?)AND age <?' –