2013-05-09 75 views
1

为什么我无法从临时表中删除行?临时表删除行

DECLARE @tbl2 TABLE 
    (
    Id int, 
    ImieNazwisko varchar(200), 
    Pesel varchar(200), 
    Kod varchar(200) 
    ) 

DELETE FROM @tbl2 tblT WHERE tblT 
SELECT * FROM @tbl2 

也是这个工作不`吨:

DELETE FROM @tbl2 WHERE @tbl2.Id 

回答

4

您可以从temprorary表中删除。这只是你的语法看起来不对。

试试这个:你想

--drop table #temptable 
create table #temptable (Id int) 
insert into #temptable 
select 1 union 
select 2 union 
select 3 

delete from #temptable 
where Id =2 

select Id from #temptable 
+0

工作正确的,但我不'吨明白为什么我的例子不起作用。 – 2013-05-09 08:54:37

+0

这是一个语法问题。很高兴它有帮助! – 2013-05-09 08:58:00

0
DECLARE @tbl2 TABLE 
    (
    Id int, 
    ImieNazwisko varchar(200), 
    Pesel varchar(200), 
    Kod varchar(200) 
    ) 

DELETE FROM @tbl2 tblT WHERE tblT.ID = 1 --- for single row delete 
SELECT * FROM @tbl2 

--from你的情况来删除表,我认为所有的数据应该是

delete from @tbl2 -- only