[討論]phpBB 2.0.6 + MSSQL的一個小BUG

與 phpBB 2.0.x 相關主題。

版主: 版主管理群

回覆文章
頭像
chienpin
星球普通子民
星球普通子民
文章: 6
註冊時間: 2002-02-20 16:17

[討論]phpBB 2.0.6 + MSSQL的一個小BUG

文章 chienpin »

今天剛好使用MSSQL來安裝phpBB...
安裝步驟都很正常也很成功...
可是在我要發表文章時出現了SQL語法錯誤...
經過檢查...提出修改方法供大家修正...

在/include/functions_search.php
大約在 243 行的地方...

代碼: 選擇全部

$sql = "INSERT IGNORE INTO " . SEARCH_MATCH_TABLE . " (post_id, word_id, title_match) 
	SELECT $post_id, word_id, $title_match  
	FROM " . SEARCH_WORD_TABLE . " 
	WHERE word_text IN ($match_sql)"; 
因為 MSSQL 不支援 INSTER IGNORE INTO...的語法...
所以要改成...

代碼: 選擇全部

switch ( SQL_LAYER )
{
	case 'mysql':
	case 'mysql4':
		$sql = "INSERT IGNORE INTO " . SEARCH_MATCH_TABLE . " (post_id, word_id, title_match) 
						SELECT $post_id, word_id, $title_match  
							FROM " . SEARCH_WORD_TABLE . " 
							WHERE word_text IN ($match_sql)"; 
		break;
	case 'mssql':
		$sql = "INSERT INTO " . SEARCH_MATCH_TABLE . " (post_id, word_id, title_match) 
						SELECT $post_id, word_id, $title_match  
							FROM " . SEARCH_WORD_TABLE . " 
							WHERE word_text IN ($match_sql)"; 
		break;
}
以上提供給各位做個參考...
回覆文章

回到「2.0」