新年的第一个问题,大家给个面子啊!
哪位帅哥能把我这句语句改写成一个存储过程啊?
string rep= "select top " + spa;
rep+= " * FROM repInfo where id not in (select top "+ filter;
rep+= " id from repInfo where 文章id= "+spt1+ " ORDER BY ID) AND 文章id= "+spt1+ " order by id ";
下面是我自己写的一个存储过程,在SQL里检查语法没有错误,但是在VS中执行却报错!
CREATE PROCEDURE Rep
(
@TopID int,
@Tem int,
@Yeshu int
)
AS
BEGIN
Declare @sql varchar(8000)
SET @sql= 'select top ' + @Tem + ' * FROM repInfo where id not in (select top '+ filter+ ' id from repInfo where 文章id= '+spt1+ ' ORDER BY ID) AND 文章id= ' +spt1+ ' order by id '
EXEC (@sql)
END
GO
请各位大侠帮帮我吧!
------解决方案--------------------消灭0回复
------解决方案--------------------不会~~帮顶-_-
------解决方案--------------------新年的第一个回贴,给点面子.给点分.
------解决方案--------------------CREATE PROCEDURE Rep
(
@TopID int,
@Tem int,
@Yeshu int
)
AS
BEGIN
Declare @sql varchar(8000)
SET @sql= 'select top ' + Convert(varchar,@TopID)+ ' * FROM repInfo where id not in (select top '+ convert(varchar,@tem)+ ' id from repInfo where 文章id= '+Convert(varchar,@yeshu)+ ' ORDER BY ID) AND 文章id= ' +Convert(varchar,@yeshu)+ ' order by id '
EXEC (@sql)
END
GO
试一下
可能还有点问题
------解决方案---------------------------------------------------
下面是我自己写的一个存储过程,在SQL里检查语法没有错误,但是在VS中执行却报错!
-------------------------------
我刚才把你写的拷贝到查询分析器里,分析是没有出问题,运行就出问题了。当然了,
我也不知道是什么问题,呵呵。
---------- 如下提示 -------------
サーバー : メッセージ 207、レベル 16、状態 3、プロシージャ Rep、行 11
列名 'filter ' は無効です。
サーバー : メッセージ 207、レベル 16、状態 1、プロシージャ Rep、行 11
列名 'spt1 ' は無効です。
サーバー : メッセージ 207、レベル 16、状態 1、プロシージャ Rep、行 11
列名 'spt1 ' は無効です。
------解决方案--------------------not in ( 'select ... ... ')
------解决方案--------------------not in ( ' + select ... ... + ')