在TSQL CREATE PROC中不能使用double?

时间:2011-11-08 00:56:50

标签: sql-server sql-server-2008 tsql

我在double周围出现语法错误,有什么问题吗?切换到float是否安全,但有效吗?

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;

谢谢!

1 个答案:

答案 0 :(得分:5)

SQL Server中没有double数据类型。您应该使用float代替它(或早期版本中的real,但您没有发布SQL Server版本。)

float与C#中的double没有完全相同的精度(再次,我假设一种.NET语言,因为它没有发布)如果你想传递值到应用程序。但float最接近C#的double,几乎肯定会满足您的要求。