select into tablename values;建新表
select into tablename(colnames);向表中插入数据;
2。应该是
declare @string1 nvarchar(1000)
declare @tablename varchar(10)
declare @string2 nvarchar(100)
set @tablename='mytable'
set @string1='select * from '+@table
set @string2=N'@table varchar(10)'
exec sp_executesql @string1,@string2,@table=@tablename
3.select * from (select * from tablename) ????可以吗?后面的select 语句返回了多行记录。可以用游标循环。
select into tablename(colnames);向表中插入数据;
2。应该是
declare @string1 nvarchar(1000)
declare @tablename varchar(10)
declare @string2 nvarchar(100)
set @tablename='mytable'
set @string1='select * from '+@table
set @string2=N'@table varchar(10)'
exec sp_executesql @string1,@string2,@table=@tablename
3.select * from (select * from tablename) ????可以吗?后面的select 语句返回了多行记录。可以用游标循环。
第二次写入我亥如何写?
2。结果还是一样
3。我能否把查询结果当一表来二次查询如何写
如果是追加就要用insert from语法了
比如
INSERT INTO archivetitles
(title_id, title, type, pub_id)
SELECT title_id, title, type, pub_id
FROM titles
WHERE (pub_id = '0766')
2.我也找不到原因,只能是sql不支持了。呵呵
有个替换的方法
declare @tablename varchar(100)
set @tablename='northwind.dbo.orders'
exec ('select * from ' + @tablename)
不知道能帮忙么
:)
3
select * from (select * from orders) as a
给你的子查询取个别名,所以如果有多个查询源,你就可以指定数据所作表了
declare @table varchar(10)
set @tablename='mytable'
set @string1='select * from '+@table
exec sp_executesql @string1
declare @string1 nvarchar(1000)
declare @table varchar(10)
set @table='mytable'
set @string1='select * from '+@table
exec sp_executesql @string1