数据库

SQL语句实现SQLServer及ACCESS复制表结构或表结构及内容到新的表

2010-12-23

SQL语句实现,SQL Server 2000 及ACCESS复制旧表OldTable的结构,或结构及内容到新的表NewTable

两个都试过了,下面的代码在这两个数据库中(SQL Server 2000 及ACCESS)都是可以通过的。

--复制表结构为新的表
select * into NewTable from OldTable where 1=2

--复制表结构及内容到新的表
select * into newtable from oldtable

如果您只需要旧表的或以前表的某一些字段,或汇总后的内容合成一个字段的话,可以这样

--复制表结构内的某些字段为新的表
select title,type,price,notes ok into NewTable2 from titles where 1=2

--复制表结构及内容到新的表,可以选择字段
select title,type,price,pub_id-price ok into NewTable2 from titles

您也可以这样,先复制表结构(可以选一些字段为新的表),再插入内容

--复制表结构内的某些字段为新的表
select title y1,type y2,price y3 into yongfa365 from titles where 1=2

--向新的表里添加数据
insert into yongfa365 (y1,y2,y3) select title,type,price from titles

其实,通过以上的例子大家可以看到,无论是复制表结构还是内容,还是汇总的结果都可以到一个新的表里,为什么呢,这时我想起了,可以把(select * from table)当成一个表,那这个问题就有答案了:既然可以把选择结果当成一个表,那这个表就可以保存下来了,直接保存成一个真正的表,供以后使用了。 您可以把上面的黄色字体去掉,代码还是一样可以运行的。