主頁 > 知識庫 > SQLserver刪除某數(shù)據(jù)庫中所有表實現(xiàn)思路

SQLserver刪除某數(shù)據(jù)庫中所有表實現(xiàn)思路

熱門標簽:美團地圖標注商戶認證注冊 承德地圖標注公司名需要花錢嗎 咸陽電腦外呼系統(tǒng)運營商 怎么給高德做地圖標注 榕城市地圖標注 北京400電話辦理多少錢 慶陽地圖標注 浙江穩(wěn)定外呼系統(tǒng)供應(yīng)商 電銷外呼系統(tǒng)軟件功能

方便刪除數(shù)據(jù)庫中所有的數(shù)據(jù)表,清空數(shù)據(jù)庫,有些有約束,不能直接delete,需要先刪除庫中的約束,代碼如下

復制代碼 代碼如下:

--刪除所有約束
DECLARE c1 cursor for
select'alter table ['+ object_name(parent_obj)+'] drop constraint ['+name+']; '
from sysobjects
where xtype ='F'
open c1
declare @c1 varchar(8000)
fetch nextfrom c1 into@c1
while(@@fetch_status=0)
begin
exec(@c1)
fetch nextfrom c1 into@c1
end
close c1
deallocate c1
--刪除數(shù)據(jù)庫所有表
declare @tname varchar(8000)
set@tname=''
select@tname=@tname+Name+','from sysobjects where xtype='U'
select@tname='drop table '+ left(@tname,len(@tname)-1)
exec(@tname)

然后清空數(shù)據(jù)庫中的所有表
如果需要刪除存儲過程等只需要將上面的做如下修改就行了的where xtype='U' 改成 where xtype='P',drop table 改成 drop Procedure

sysobjects的xtype代表含義:

在數(shù)據(jù)庫內(nèi)創(chuàng)建的每個對象(約束、默認值、日志、規(guī)則、存儲過程等)在表中占一行。只有在 tempdb 內(nèi),每個臨時對象才在該表中占一行。

列名 數(shù)據(jù)類型 描述
name sysname 對象名。
Id int 對象標識號。
xtype char(2) 對象類型??梢允窍铝袑ο箢愋椭械囊环N:
C = CHECK 約束
D = 默認值或 DEFAULT 約束
F = FOREIGN KEY 約束
L = 日志
FN = 標量函數(shù)
IF = 內(nèi)嵌表函數(shù)
P = 存儲過程
PK = PRIMARY KEY 約束(類型是 K)
RF = 復制篩選存儲過程
S = 系統(tǒng)表
TF = 表函數(shù)
TR = 觸發(fā)器
U = 用戶表
UQ = UNIQUE 約束(類型是 K)
V = 視圖
X = 擴展存儲過程

uid smallint 所有者對象的用戶 ID。
info smallint 保留。僅限內(nèi)部使用。
status int 保留。僅限內(nèi)部使用。
base_schema_
ver int 保留。僅限內(nèi)部使用。
replinfo int 保留。供復制使用。
parent_obj int 父對象的對象標識號(例如,對于觸發(fā)器或約束,該標識號為表 ID)。
crdate datetime 對象的創(chuàng)建日期。
ftcatid smallint 為全文索引注冊的所有用戶表的全文目錄標識符,對于沒有注冊的所有用戶表則為 0。
schema_ver int 版本號,該版本號在每次表的架構(gòu)更改時都增加。
stats_schema_
ver int 保留。僅限內(nèi)部使用。
type char(2) 對象類型??梢允窍铝兄抵唬?
C = CHECK 約束
D = 默認值或 DEFAULT 約束
F = FOREIGN KEY 約束
FN = 標量函數(shù)
IF = 內(nèi)嵌表函數(shù)
K = PRIMARY KEY 或 UNIQUE 約束
L = 日志
P = 存儲過程
R = 規(guī)則
RF = 復制篩選存儲過程
S = 系統(tǒng)表
TF = 表函數(shù)
TR = 觸發(fā)器
U = 用戶表
V = 視圖
X = 擴展存儲過程
userstat smallint 保留。
sysstat smallint 內(nèi)部狀態(tài)信息。
indexdel smallint 保留。
refdate datetime 留作以后使用。
version int 留作以后使用。
deltrig int 保留。
instrig int 保留。
updtrig int 保留。
seltrig int 保留。
category int 用于發(fā)布、約束和標識。
cache smallint 保留。

您可能感興趣的文章:
  • 教你幾種在SQLServer中刪除重復數(shù)據(jù)方法
  • 如何強制刪除或恢復SQLServer正在使用的數(shù)據(jù)庫
  • 刪除sqlserver數(shù)據(jù)庫日志和沒有日志的數(shù)據(jù)庫恢復辦法
  • 如何在SQLSERVER中快速有條件刪除海量數(shù)據(jù)
  • 在 SQLSERVER 中快速有條件刪除海量數(shù)據(jù)
  • sql server刪除前1000行數(shù)據(jù)的方法實例

標簽:昭通 拉薩 上海 江蘇 呼和浩特 新鄉(xiāng) 貴州 重慶

巨人網(wǎng)絡(luò)通訊聲明:本文標題《SQLserver刪除某數(shù)據(jù)庫中所有表實現(xiàn)思路》,本文關(guān)鍵詞  SQLserver,刪除,某,數(shù)據(jù)庫,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQLserver刪除某數(shù)據(jù)庫中所有表實現(xiàn)思路》相關(guān)的同類信息!
  • 本頁收集關(guān)于SQLserver刪除某數(shù)據(jù)庫中所有表實現(xiàn)思路的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章