2012-07-10 99 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

相关问题