这个存储过程哪里有问题?

tedagov328281 2009-04-02 11:24:26
消息 102,级别 15,状态 1,过程 ballance,第 14 行
' ' 附近有语法错误。

我去掉游标定义竟然可以编译通过,sqlserver真是够垃圾的,加上定义就报错

CREATE PROCEDURE ballance
AS
declare @MatchScore varchar(6)
declare @MatchLetFlag tinyint
declare @SaleId int
declare @SalePkType varchar(20)
declare @SaleSelect tinyint
declare @SalePK varchar(50)
declare @SaleSureMoney money

BEGIN

DECLARE Sale_cursor CURSOR FOR
  select m.MatchScore,m.MatchLetFlag,s.SaleId,s.SalePkType,s.SaleSelect,s.SalePK,s.SaleSureMoney
from TM_match m,TM_Sale s
where m.MatchId = s.MatchId and s.SaleResult = 'a'


open Sale_cursor

fetch next from Sale_cursor into @MatchScore,@MatchLetFlag,@SaleId,@SalePkType,@SaleSelect,@SalePK,@SaleSureMoney
while (@@fetch_status=0)
begin
print @MatchScore
fetch next from Sale_cursor into @MatchScore,@MatchLetFlag,@SaleId,@SalePkType,@SaleSelect,@SalePK,@SaleSureMoney
end
close Sale_cursor

END
GO
...全文
55 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
you_tube 2009-04-02
  • 打赏
  • 举报
回复
CREATE PROCEDURE ballance
AS
declare @MatchScore varchar(6)
declare @MatchLetFlag tinyint
declare @SaleId int
declare @SalePkType varchar(20)
declare @SaleSelect tinyint
declare @SalePK varchar(50)
declare @SaleSureMoney money

BEGIN

DECLARE Sale_cursor CURSOR FOR
SELECT m.MatchScore,m.MatchLetFlag,s.SaleId,s.SalePkType,s.SaleSelect,s.SalePK,s.SaleSureMoney FROM TM_match m ,TM_Sale s
where m.MatchId = s.MatchId and s.SaleResult ='a'
open Sale_cursor

fetch next from Sale_cursor into
@MatchScore,@MatchLetFlag,@SaleId,@SalePkType,@SaleSelect,@SalePK,@SaleSureMoney
while (@@fetch_status=0)
begin
print @MatchScore
fetch next from Sale_cursor into
@MatchScore,@MatchLetFlag,@SaleId,@SalePkType,@SaleSelect,@SalePK,@SaleSureMoney
end
close Sale_cursor

END
GO
htl258_Tony 2009-04-02
  • 打赏
  • 举报
回复
CREATE PROCEDURE ballance 
AS
declare @MatchScore varchar(6)
declare @MatchLetFlag tinyint
declare @SaleId int
declare @SalePkType varchar(20)
declare @SaleSelect tinyint
declare @SalePK varchar(50)
declare @SaleSureMoney money

BEGIN

DECLARE Sale_cursor CURSOR FOR
select m.MatchScore,m.MatchLetFlag,s.SaleId,s.SalePkType,s.SaleSelect,s.SalePK,s.SaleSureMoney --前面一个全角的空格
from TM_match m,TM_Sale s
where m.MatchId = s.MatchId and s.SaleResult = 'a'


open Sale_cursor

fetch next from Sale_cursor into @MatchScore,@MatchLetFlag,@SaleId,@SalePkType,@SaleSelect,@SalePK,@SaleSureMoney
while (@@fetch_status=0)
begin
print @MatchScore
fetch next from Sale_cursor into @MatchScore,@MatchLetFlag,@SaleId,@SalePkType,@SaleSelect,@SalePK,@SaleSureMoney
end
close Sale_cursor

END
GO
? 第四章 T-SQL编程 ? ? 1、TSQL语句的分类 ? 2、TSQL语句实战1 ? 3、TSQL语句实战2 ? 4、TSQL语句实战3 ? 5、TSQL语句实战4 ? 6、TSQL语句实战5 ? 7、TSQL语句实战6 ? 8、TSQL语句实战7 ? 9、TSQL语句实战8 ? 10、TSQL语句实战9 ? 11、TSQL语句实战10 ? 12、TSQL语句实战11 ? 13、TSQL语句实战12 ? 14、TSQL语句实战13 ? 15、TSQL语句实战14 ? 16、TSQL语句实战15 ? 17、TSQL语句实战16 ? 18、TSQL语句实战17 ? 19、TSQL语句实战18 ? 20、TSQL语句实战19 ? 21、TSQL语句实战20 ? ? 第五章 函数 ? ? 1、函数简介 ? 2、函数(1) ? 3、函数(2) ? 4、函数(3) ? 5、函数(4) ? 6、函数(5) ? 7、函数(6) ? 8、函数(7) ? 9、函数(8) ? 10、函数(9) ? 11、函数(10) ? 12、函数(11) ? 13、函数(12) ? 14、函数(13) ? 15、函数(14) ? 16、函数(15) ? 17、函数(16) ? 18、函数(17) ? 19、函数(18) ? 20、函数(19) ? 21、函数(20) ? 22、函数(21) ? 23、函数(22) ? ? ? 第六章 存储过程 ? ? 1、存储过程(1) ? 2、存储过程(2) ? 3、存储过程(3) ? 4、存储过程(4) ? 5、存储过程(5) ? 6、存储过程(6) ? 7、存储过程(7) ? 8、存储过程(8) ? 9、存储过程(9) ? 10、存储过程(10) ? 11、存储过程(11) ? 12、存储过程(12) ? 13、存储过程(13) ? 14、存储过程(14) ? 15、存储过程(15) ? 16、存储过程(16) ? 17、存储过程(17) ? 18、存储过程(18) ? 19、存储过程(19) ? 20、存储过程(20) ? 21、存储过程(21) ? ? 第七章 游标 ? ? 1、游标1 ? 2、游标2 ? 3、游标3 ? 4、游标4 ? 5、游标5 ? 6、游标6 ? 7、游标7 ? 8、游标8 ? 9、游标9
Oracle培训内容-服务 一 程序或者存储过程报表优化 问题场景: 目前遇到客户反映程序慢或者存储过程报表慢,都是拿程序或者任务id到后台拿程序测试,找出慢的程序段,做解释计划。如果其中有全表扫描,就加简单的索引,然后进行表分析,如果没有这些都没有用,就素手无策了 培训内容: 1,索引的分类?用途?比如什么时候用组合索引、单字段索引?组合索引中字段顺序 2,SQL中基本查询条件优化,如何提高SQL性能,比如exist比in性能高。。。Where子句中条件前后顺序对性能有没有影响等 3,表分析中都做了些什么动作?以下两种优化语句具体的不同点是什么? analyze table your_test_table_name compute statistics; analyze table m_checking compute statistics for table for all indexes for all indexed columns; 4,如果表分析加索引什么的都没有用时,如何优化程序? 5,一个程序中如果有针对同一个表的update是否整合写成一个update效率会更高? 二 视图报表优化 问题场景: 几张视图报表查询不稳定,之后改成存储过程报表后查询速度变慢,不知如何优化 培训内容: 1,视图报表和存储过程报表查询各自的查询机制是什么?比如视图报表是查询所有数据之后根据过滤条件过滤。。 2,报表中用到的表是不是临时表比较好?什么时候用临时表?什么时候用事实表? 3,保护提交行的作用? 三 归档日志查询 问题场景: 目前很多客户日志都是每天切换一次的,所以如果要查询非系统当天的日志时,就需要先恢复归档日志 培训内容: 1,如何开启归档日志 2,若数据库服务器是linux系统的,那么如何登陆系统?如何查看要回复的SEQid?在什么界面执行恢复归档日志的语句?

22,299

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧