2014-09-28 65 views
0

我可以訪問其名稱中沒有空格的數據庫和表格,但是當它們做不到時,我無法訪問它們。sqlsrv訪問數據庫和PHP中名稱中有空格的表格

$result = "SELECT * FROM [LoLDatabase].[dbo].[Champ Stats]"; 
^ has no errors but returns nothing 
$result = "SELECT * FROM [LoLDatabase].[dbo].Items"; 
^Works 

echo $obj->Cost.'<br />'; 
^works 

echo $obj->Item Name.'<br />'; 
^Does not work 

nor do these... 
echo $obj->Item_Name.'<br />'; 

$colName = "[Item Name]"; 
echo $obj->$colName.'<br />'; 

echo $obj->[Item_Name].'<br />'; 

所以我唯一的希望是改變我的SQL管理器中的名稱?

+0

'$ obj ['Item Name']''?我看不出第一個選擇有什麼問題,如果它不返回表中的行,那麼很奇怪。 – 2014-09-28 17:47:16

+0

也許這些空間不是真正的空間,而是其他一些不可打印的字符。或者,在名稱末尾也有空格。 – 2014-09-28 17:56:23

+0

不,它們是我的MSSQL管理器中設置的空格,它將[]添加到帶空格的標識符。所以我的名字變成[我的名字]。之後沒有空格。 $ obj ['Item Name']似乎對我來說並不友好,因爲它打破了我的文件,只返回空白頁面。 – Nonlin 2014-09-28 19:27:48

回答

0

這工作:

SELECT [Item Name] + ' ' as ItemName 
FROM [LoLDatabase].[dbo].Items; 

所以它必須現在做的事。

相關問題