Sql Server 刪除所有表

2021-09-07 06:05:23 字數 1919 閱讀 6506

如果由於外來鍵約束刪除table失敗,則先刪除所有約束:

--/第1步**********刪除所有表的外來鍵約束*************************/

declarec1cursorfor

select'alter table ['+ object_name(parent_obj) +'] drop constraint ['+name+']; '

fromsysobjects

wherextype ='f'

openc1

declare@c1varchar(8000)

fetchnextfromc1into@c1

while(@@fetch_status=0)

begin

exec(@c1)

fetchnextfromc1into@c1

end

closec1

deallocatec1

--/第2步**********刪除所有表*************************/

use 資料庫名(是要刪除表的所在的那個資料庫的名稱)

go

declare@sqlvarchar(8000)

while (selectcount(*)fromsysobjectswheretype='u')>0

begin

select@sql='drop table '+name

fromsysobjects

where(type ='u')

orderby'drop table '+name

exec(@sql)

end

sqlserver刪除所有的使用者表

create procedure dbo.deletetable as declare name as nvarchar 128 declare curobject cursor for select name from sysobjects where type u and name like p...

sqlserver 2008 刪除所有表

declare c cursor for 定義游標 select name from sysobjects where xtype u 查詢所有表 declare t varchar 20 open c fetch next from c into t while fetch status 0 be...

所有的表sqlserver

select o.name as tablename,user name o.uid as owner,isnull ptb.value,n as tabledescription,c.colid as fieldid,c.name as fieldname,quotename t.name cas...