2011-11-08 30 views
0

我得到了一個關於double的語法錯誤,有什麼問題嗎?是否安全地切換到float,但工程?在TSQL CREATE PROC中不能使用double?

create proc S_average 
(
    @dept_id char(10), 
    @dept_name char(10) OUTPUT, 
    @dept_avg double OUTPUT 
) 
AS 
select @dept_name = name , @dept_avg = payroll 
from dbo.employees 
where id = @dept_id; 

謝謝!

回答

5

SQL Server中沒有double數據類型。您應該使用float來代替(或早期版本中的real,但您沒有發佈SQL Server版本)。

float與C#中的double的精度並不完全相同(如果您希望將值傳遞給應用程序,那麼我假設.NET語言爲未發佈)。但是float是最接近C#的double,幾乎肯定會滿足您的要求。

+0

它是MSSQL 2K8,開發者版本 – daisy

+0

@ warl0ck好的,完美的。然後使用'float'。這對你有用。 – 2011-11-08 01:03:50