create function Fn_Cost 
returns table
as 
begin
alter table Goods
add 进货金额 money not null
return (select 商品编号,商品名称,生产厂商,进货价,零售价,数量,进货时间,进货员工编号,进货金额=进货价*数量 from Goods)
end不知这样写错在哪了?

解决方案 »

  1.   

    干嘛那么费劲呢?
    把你return后面的SQL语句做成一个查询不就可以了?比如Q_Goods以后使用:Select * from Q_Goods自定义函数应该不可以按LZ的方法做的。
      

  2.   

    alter table Goods add 进货金额 money  nullcreate function Fn_Cost ()
    returns int
    as
    begin
    update Goods
    set [进货金额]=[进货价]*[数量]
    return 0
    end不知为何这样写,说update用法错误,大家帮我看下.
      

  3.   

    create function Fn_Cost 
    returns table 
    as return (select 商品编号,商品名称,生产厂商,进货价,零售价,数量,进货时间,进货员工编号,进货金额=进货价*数量 from Goods); 
    go
      

  4.   

    这样写不行,测试用测试:SELECT * FROM Goods 不能得出结果.
    不合题意. 如果按你这样写的话,就比较容易了.