2012-07-10 100 views
1

我對通常的存儲過程和SQL Server/T-SQL沒有特別的熟悉。我想知道是否有方法來別名或重命名存儲過程返回的列而不修改存儲過程本身。由存儲過程返回的別名列[SQL Server 2008]

這裏是我現在的存儲過程調用。

EXEC sp_GetNearbyLocations 38.858907, -77.261358 

它返回記錄有以下的列:

State 
Zip 
Phone 
StartDate 
Directions 
Hours 
Latitude 
Longitude 
Distance 

但是我希望他們全部小寫,而不是駱駝套管。可悲的是,我不控制存儲過程,所以我不能改變它,只是我的電話。這在SQL Server 2008中可能嗎?

+0

什麼版本的SQL Server? – 2012-07-10 18:45:07

+0

2008年,我剛剛更新了我的問題來指定這一點。 – macinjosh 2012-07-10 18:50:58

回答

6

如果SQL Server 2012可以使用WITH RESULT SETS功能。

否則,這是不可能的,它會要求您將結果插入某種中間臨時表中,然後從中選擇。

(你可以做到這一點,而不使用OPEN ROWSET但明確創建臨時表)

+0

看起來只是我需要的,但我正在使用Microsoft SQL Server 2008 R2。 :-(我會更新我的帖子來指定這個 – macinjosh 2012-07-10 18:49:19

0

你可以寫你自己的PROC簡單地調用另一個,別名列,並返回。

附註:爲什麼列名的情況對您有影響?

+0

長話短說,我正在編寫一個訪問這個SQL Server數據庫並通過AJAX向Web前端提供數據的PHP後端,JS代碼希望字段名在某種形式和情況下,不必更新JS代碼或添加更改字段名稱的PHP代碼將會很好。 – macinjosh 2012-07-10 18:57:03

相關問題