新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
不用知道SQLServer表名就可以刪除該表以外的所有表
想刪除除表a以外的所有表,但是并不知道想刪除表A的SQL Server表名,實現(xiàn)這樣功能的語句應(yīng)該如何寫呢?下面就為您介紹這種不用知道SQL Server表名就可以刪除該表以外的所有表的方法,供您參考。

成都創(chuàng)新互聯(lián)長期為數(shù)千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為華亭企業(yè)提供專業(yè)的成都網(wǎng)站制作、網(wǎng)站建設(shè),華亭網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
--首先要刪除表,就要刪除它的外鍵約束
- while(11=1)
- begin
- declare @exit int --判斷是否還有外鍵約束
- declare @constr_id varchar(200) --獲取外鍵約束的ID
- declare @table_id varchar(200) --獲取設(shè)外鍵的表的ID
- declare @table varchar --獲取設(shè)外鍵的表名
- declare @constr_name varchar(100) --獲取約束名
- declare @str varchar(100) --刪除表語句字符串
- declare @drop_constr varchar(100) --刪除約束字符串
- declare @conn_str varchar(2000) --將刪除語句連接起來的字符串
- select top 1 @constr_id=id,@constr_name=name from sysobjects where type='f'
- select @table_id=fkeyid from sysforeignkeys where constid=@constr_id
- select @table=name from sysobjects where id=@table_id
- select @exit=count(*) from sysobjects where type='f'
- if(@exit!=0)
- begin
- set @str='alter table'
- set @drop_constr='drop constraint'
- set @conn_str=@str+' '+@table+' '+@drop_constr+' '+@constr_name
- exec(@conn_str)
- end
- else
- break
- end
- if exists(select * from sysobjects where name='proc_drop_table' and type='p')
- drop proc proc_drop_table
- go
- create proc proc_drop_table
- @table_name varchar(200) --指定你不想刪除的表名
- as
- while(11=1)
- begin
- declare @str varchar(200)
- declare @exit int
- set @str='drop table'
- select top 1 @str=@str+' '+name from sysobjects where type='u' and name!=@table_name
- select @exit=count(*) from sysobjects where type='u' and name!=@table_name
- print @str
- if(@exit!=0)
- exec(@str)
- else
- begin
- break
- return
- end
- end
- go
- exec proc_drop_table a
以上就是不用知道SQL Server表名就可以刪除該表以外的所有表的方法介紹。
【編輯推薦】
SQL Server創(chuàng)建表語句介紹
SQL server服務(wù)器版的安裝方法
帶您了解SQL Server游標(biāo)
帶您了解SQL Server觸發(fā)器管理
SQL Server的優(yōu)點和缺點
文章標(biāo)題:不用知道SQLServer表名就可以刪除該表以外的所有表
本文網(wǎng)址:http://m.fisionsoft.com.cn/article/cossscd.html


咨詢
建站咨詢
