最近專案有部署到私有雲的計畫。為了最後的尊嚴,不能把完整的資料庫給對方反向工程了。需要把資料表和列的描述給刪掉。
直接上**,用的游標處理方式。
1--表描述
2declare
@tnnvarchar(50)3
declare c cursor
forselect t.name from sys.tables as t inner
join sys.extended_properties as p on t.[
object_id
]=p.major_id where t.[
type]=
'u'and p.minor_id =
0and p.[
name
]= n'
ms_description
'order
byt.name
4openc5
fetch
next
from c into
@tn6
while
@@fetch_status=0
7begin
8exec sys.sp_dropextendedproperty @name
= n'
ms_description
' ,@level0type
= n'
schema
', @level0name
= n'
gxjt
' , @level1type
= n'
table
' ,@level1name
=@tn;9
fetch
next
from c into
@tn10
end11
closec12
deallocatec13
go14
15--
列描述16
declare
@tnnvarchar(50),@cn
nvarchar(50)17
declare c cursor
forselect t.name as tn,l.name as cn from sys.[
columns
]as l inner
join sys.extended_properties as p on l.[
object_id
]=p.major_id and l.column_id=p.minor_id inner
join sys.tables as t on l.[
object_id
]=t.[
object_id
]where t.[
type]=
'u'and p.[
name
]= n'
ms_description
'order
byt.name,l.name
18openc19
fetch
next
from c into
@tn,@cn
20while
@@fetch_status=0
21begin
22exec sys.sp_dropextendedproperty @name
= n'
ms_description
' ,@level0type
= n'
schema
', @level0name
= n'
gxjt
' , @level1type
= n'
table
' ,@level1name
=@tn,@level2type
= n'
column
',@level2name
=@cn;23
fetch
next
from c into
@tn,@cn
24end
25closec26
deallocatec27
go
SQL Server 建立 修改 刪除資料表
1.圖形介面方式運算元據表 1 建立和修改資料表 列名中如果有兩個以上單詞時,最好用下劃線連線,否則可能會給將來的查詢維護帶來不便。我們公司美國佬做的資料庫就很煩,所有列名都有空格,一旦忘記用方括號就gg了。2 刪除資料表 2.transect sql 語句運算元據表 1 建立和修改資料表 use ...
sql server 匯入Excel資料表
乙個挺簡單的功能,竟然弄了一下午,現在來總結一下吧。其實最開始的問題是sql server 安裝的不完整,後面的問題是目標資料來源型別不正確。開始時用的是sql server 2005,安裝時有好多功能沒有選,但後來給忘了,一直提示沒有ssis 沒有安裝,就開始在網上查這是個什麼東西,後來知道了是s...
Sql Server刪除資料表中重覆記錄 三種方法
本文介紹了sql server資料庫中刪除資料表中重覆記錄的方法。專案 資料庫中users表,包含u name,u pwd兩個字段,其中u name存在重複項,現在要實現把重複的項刪除!分析 1 生成一張臨時表new users,表結構與users表一樣 2 對users表按id做乙個迴圈,每從us...