with tmpCTE AS
(
select P_Name,Prefix from dbo.Provider
)
--CTE 之后必须跟随引用部分或全部 CTE 列的 SELECT、INSERT、UPDATE 或 DELETE 语句。
update tmpCTE set P_Name=P_Name where 1=2
declare @P_Name varchar(20);
declare @Prefix varchar(2);
DECLARE MyCursor CURSOR FOR SELECT P_Name,Prefix from tmpCTE;
OPEN MyCursor;
FETCH NEXT FROM MyCursor INTO @P_Name,@Prefix
WHILE @@FETCH_STATUS = 0
BEGIN
print @P_Name;
print @Prefix;
FETCH NEXT FROM MyCursor INTO @P_Name,@Prefix
END
解决方案 »
- SQL我想按表名删除表
- 加班中遇到的简单问题
- (急)请教:如果删除SQL被注入的字段
- 求一简单SQL语句
- 需要这样的统计结果,请大家指点
- 在写存储过程中报对象已经存在错误
- 请问删除重复和取前多少条能不能这样合写在一起?
- 急于求助 sql ce3.0与sql server 2000的数据同步问题
- Windows Server 2003 64位对Sql2000 32兼容性怎么样啊 会不会影响性能
- 一不小心把日志文件删除了,然后就出现 数据库置疑 该怎么办呢?
- 数据库设计问题 多模块 对应单数据库 和 多数据库 各自的优势.
- ms sql server error 7616 can't execute changes 无法 创建 full-text catalog
对象名 'tmpCTE' 无效。在执行了 update tmpCTE set P_Name=P_Name where 1=2
之后再DECLARE MyCursor CURSOR FOR SELECT P_Name,Prefix from tmpCTE;就出错了。
没人知道啊?!!!!!!!!!!
DECLARE @TempTable Table
(
P_Name varchar(20),
Prefix varchar(2)
);with tmpCTE AS
(
select P_Name,Prefix from dbo.Provider
)
INERT INTO @TempTable SELECT * FROM tmpCTE;declare @P_Name varchar(20);
declare @Prefix varchar(2);
DECLARE MyCursor CURSOR FOR SELECT P_Name,Prefix from @TempTable ;
OPEN MyCursor;
FETCH NEXT FROM MyCursor INTO @P_Name,@Prefix
WHILE @@FETCH_STATUS = 0
BEGIN
print @P_Name;
print @Prefix;
FETCH NEXT FROM MyCursor INTO @P_Name,@Prefix
END