我有一個在SQL Server的工作原理以及但是當我在ADO查詢其保存在Delphi中這是行不通的,並與此錯誤停止查詢:衝突
Incorrect syntax near 'GO'
但下面的代碼是正確的,沒有任何錯誤。我在sql server中測試過它。 下面的代碼是不正規的,因爲我從delphi複製和過去。
我的查詢:
create function GetTedad(@pfcode INT, @pdcode INT) returns int
as begin declare @Tedad int;
select @Tedad= sum(t2.tedade_avalie) from Tbl_avalie_salon t2 where t2.FCode = @pfcode and t2.DCode = @pdcode
return (@Tedad); end;
GO
create function getSumBSen2(@pfcode INT, @pdcode INT, @pSen INT) returns int
as begin declare @r int;
select @r= sum(t2.t_shab + t2.t_rooz) from tbl_talafat_dan t2 where t2.FCode = @pfcode and t2.DCode = @pdcode and t2.sen <= @pSen;
return (@r); end;
GO
select t1.sen, sum(t1.d_rooz) as d1, sum(t1.d_shab) as d2, sum(t1.d_rooz + t1.d_shab) as d_sum,
Round((sum((1000*(t1.d_rooz+t1.d_shab)+0.01)/((dbo.GetTedad(81, 1))-(dbo.getSumBSen2(81, 1, t1.sen))))),1) as Saraneh
from tbl_talafat_dan t1 where t1.FCode =81 and t1.DCode = 1 group by t1.sen;
嘗試搜索和替換所有行只與一個分號走行。我有預感這可能會奏效,但從來沒有花時間來正確地測試它。 –
@CraigYoung - 那不行。 'create function'必須在它自己的批處理中。 –
@MikaelEriksson謝謝,我不知道分號是否會被當作批分隔符處理......我猜不是。 :(但是,我發現了一個值得考慮的另一個選項的鏈接:http://weblogs.asp.net/jgalloway/archive/2006/11/07/Handling-_2200_GO_2200_-Separators-in-SQL-Scripts-_2D00_-在-易way.aspx –