自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

不用知道SQL Server表名就可以刪除該表以外的所有表

數(shù)據(jù)庫 SQL Server
如果想刪除某表以外的所有表,但是卻不知道該表的表明,還能不能實現(xiàn)呢?答案是肯定的。下面就教您這種方法,供你參考。

想刪除除表a以外的所有表,但是并不知道想刪除表A的SQL Server表名,實現(xiàn)這樣功能的語句應(yīng)該如何寫呢?下面就為您介紹這種不用知道SQL Server表名就可以刪除該表以外的所有表的方法,供您參考。

--首先要刪除表,就要刪除它的外鍵約束

  1. while(11=1)  
  2. begin  
  3. declare @exit int                  --判斷是否還有外鍵約束  
  4. declare @constr_id varchar(200)    --獲取外鍵約束的ID  
  5. declare @table_id varchar(200)     --獲取設(shè)外鍵的表的ID  
  6. declare @table varchar             --獲取設(shè)外鍵的表名  
  7. declare @constr_name varchar(100) --獲取約束名   
  8. declare @str varchar(100)    --刪除表語句字符串  
  9. declare @drop_constr varchar(100)    --刪除約束字符串  
  10. declare @conn_str varchar(2000)                   --將刪除語句連接起來的字符串      
  11. select   top 1 @constr_id=id,@constr_name=name from sysobjects where type='f' 
  12. select   @table_id=fkeyid from sysforeignkeys where constid=@constr_id  
  13. select   @table=name from sysobjects where id=@table_id  
  14. select   @exit=count(*) from sysobjects where type='f' 
  15. if(@exit!=0)  
  16. begin  
  17. set @str='alter table' 
  18. set @drop_constr='drop constraint' 
  19. set @conn_str=@str+' '+@table+' '+@drop_constr+' '+@constr_name  
  20. exec(@conn_str)  
  21. end  
  22. else  
  23. break  
  24. end  
  25.  
  26. if exists(select * from sysobjects where name='proc_drop_table' and type='p')  
  27.       drop proc proc_drop_table  
  28. go  
  29. create proc proc_drop_table  
  30. @table_name varchar(200)        --指定你不想刪除的表名  
  31. as  
  32. while(11=1)  
  33. begin  
  34. declare @str varchar(200)  
  35. declare @exit int  
  36. set @str='drop table' 
  37. select top 1 @str=@str+' '+name from sysobjects where type='u' and name!=@table_name  
  38. select @exit=count(*) from sysobjects where type='u' and name!=@table_name  
  39. print @str  
  40. if(@exit!=0)  
  41. exec(@str)  
  42. else  
  43. begin  
  44. break  
  45. return  
  46. end  
  47. end  
  48. go  
  49.  
  50. exec proc_drop_table a  
  51.  

以上就是不用知道SQL Server表名就可以刪除該表以外的所有表的方法介紹。

 

 

 

【編輯推薦】

SQL Server創(chuàng)建表語句介紹

SQL server服務(wù)器版的安裝方法

帶您了解SQL Server游標(biāo)

帶您了解SQL Server觸發(fā)器管理

SQL Server的優(yōu)點和缺點

責(zé)任編輯:段燃 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-11-11 09:20:46

SQL Server創(chuàng)

2010-11-11 14:36:11

SQL Server系

2010-11-11 10:41:03

sql server遍

2010-11-09 12:09:23

SQL Server查

2010-10-22 16:48:49

SQL刪除所有表數(shù)據(jù)

2010-07-22 10:38:12

SQL Server所

2010-11-11 11:00:06

sql server遍

2010-11-10 11:37:29

SQL Server刪

2010-09-02 16:28:03

SQL刪除

2010-09-02 11:34:51

SQL刪除

2010-09-16 14:13:11

SQL Server系

2010-07-22 16:02:29

2010-09-16 15:10:48

SQL Server表

2011-03-29 13:22:07

SQL Server臨時表表變量

2022-10-17 07:16:08

SQL機器學(xué)習(xí)AI

2010-10-19 16:20:32

SQL SERVER表

2009-04-20 15:54:04

SQL Server重復(fù)行

2010-11-10 14:54:24

SQL Server系

2010-10-19 14:45:01

SQL SERVER臨

2010-09-14 11:36:37

SQL Server系
點贊
收藏

51CTO技術(shù)棧公眾號