CREATE FUNCTION MyFunc(@money DOUBLE)
RETURNS DOUBLE
AS
BEGIN
RETURN SELECT COUNT(*) FROM Cost WHERE costs<@money
END报错
消息 102,级别 15,状态 1,过程 MyFunc,第 1 行
')' 附近有语法错误。
消息 137,级别 15,状态 2,过程 MyFunc,第 5 行
必须声明标量变量 "@money"。
RETURNS DOUBLE
AS
BEGIN
RETURN SELECT COUNT(*) FROM Cost WHERE costs<@money
END报错
消息 102,级别 15,状态 1,过程 MyFunc,第 1 行
')' 附近有语法错误。
消息 137,级别 15,状态 2,过程 MyFunc,第 5 行
必须声明标量变量 "@money"。
解决方案 »
- 关于数据库一些问题
- Syntax error converting datetime from character string
- 同一服务器上的两个数据库同步
- 高手求救一个sql的问题(关于编号,如1.1,1.11,1.12,1.2)
- 批量更新触发器问题?
- 远程进行数据库备份时出现提示“不允许对文件或文件组sysft_new进行备份,因为他没有联机。可以使用FILEGROUP子句或FILE子句执行BACKUP,以限制在选项中只包含联机数据。”
- 如何隐藏系统的那些表?
- 高分求 mrpii erp 实施规划时间表,和流程图!
- oracle,sql server学哪个好?
- SQL Server 6.5能否装在Windows 2000服务器上?
- sql server 字符串替换问题
- mysql 我有一个字段保存的值使用逗号隔开,怎么查询字段里总共有多少个值
RETURNS decimal
AS
BEGINdeclare @t int
set @t=(SELECT COUNT(*) FROM Cost WHERE costs<@money)
RETURN @tEND
RETURNS int
AS
BEGIN
RETURN (SELECT COUNT(*) FROM Cost WHERE costs<@money)END
RETURNS double
AS
BEGIN
RETURN (SELECT COUNT(*) FROM Cost WHERE costs<@money)
END
create function myfunc ( @money float )
returns int
as
begin
return (select count(*) from cost where costs<@money)
end
RETURNS int
AS
BEGIN
DECLARE @it INT
SET @it= (SELECT COUNT(*) FROM Cost WHERE costs<@money)
RETURN @it;
END;错误:消息 102,级别 15,状态 1,过程 MyFunc,第 1 行
')' 附近有语法错误。
消息 137,级别 15,状态 2,过程 MyFunc,第 6 行
必须声明标量变量 "@money"。
消息 178,级别 15,状态 1,过程 MyFunc,第 7 行
在此上下文中不能使用带有返回值的 RETURN 语句。
数据库的字段:
类型:float 代表从 - 1.79E + 308 到 1.79E + 308 之间的浮点数字数据。(占用8字节)
类型:real 代表从 -3.40E + 38 到 3.40E + 38 之间的浮点数字数据。(占用4字节)而C#中:
double 表示一个值介于 -1.79769313486232e308 和 +1.79769313486232e308 之间的双精度 64 位数字(8字节)
float 表示一个值介于 -3.402823e38 和 +3.402823e38 之间的单精度 32 位数字(4字节)就是说数据库中没有double型,float就表示double值。
sql server数据库字段类型与.net的数据类型的对应关系:real(数据库)<--> float(.NET)
float(数据库)<--> double(.NET)读取数据库中的float类型的字段要使用GetDouble方法
读取数据库中的real类型的字段时才应该使用GetFloat方法