SQL 临时表
表名前使用一个#号(#),临时表是局部的,只允许当前会话使用;使用两个#号(##),临时表是全局的,当前在线的会话都可以使用,在断开连接后sql会自动删除临时表。
1 create table #a 2 ( 3 id int, 4 name varchar(50) 5 ) 6 insert into #a(id,name) values(1,'123') 7 select * from #a 8 drop table #a
临时表除了名称前多了#号外,其他操作与普通表完全一样。
tb_Student是已建立好的表,我们通过临时表temp把tb_Student表中的内容复制到tb_lizi表中,可以使用如下的代码实现:
1 use mcf 2 SELECT * INTO #temp FROM tb_Student 3 SELECT * INTO tb_lizi FROM #temp
执行后断开sql连接并重新连接(也可以退出sq再l重新启动sql),发现tb_lizi表中的内容tb_Student表中的内容完全一致,实现了复制,同时我们没有用代码删除temp表,但mcf数据库中却没有temp表了,这是因为断开连接时sql自动删除了temp表。