1. SQL SERVER中怎麼刪除文件組和文件
文件與文件組的刪除,如果因為以前的分區方案不合理,需要取消分區,或者按另外一種方式分區,就需要涉及到文件與文件組的刪除操作,如果沒有掌握正確步驟,有時候可能無法刪除,會提示你「文件不為空,無法刪除」或者「文件組不為空,不能刪除」等等,如果不知道技巧,會很郁悶!本人就曾經經歷過這樣的郁悶!在網路也沒找到正確答案。
1、 文件的刪除:首先要先清空文件里的數據,刪除之前數據一定要記得先備份,可將數據復制到其他表,然後執行:
DBCC SHRINKFILE (FileName, EMPTYFILE);
文件中的內容刪除後,再執行刪除文件命令,DataBaseName表示數據名,FileName 表示文件名:
ALTER DATABASE [DataBaseName] REMOVE FILE FileName;
2、文件組的刪除:
當文件組的文件被刪除後,按正常理解,應該就可以直接刪除文件組,實際是不行的,你無法刪除文件組。
因為還有幾個東西依賴文件組,一是分區方案,二是使用該分區方案的分區表。
所以要刪除分區方案才能刪除文件組。但要刪除分區方案之前要先更改依賴它的分區表,使其不依賴它。
這個主要是更改分區表的分區列,使其不使用分區方案,如果實在不會更改,在表裡數據已經備份的前提下,可以直接刪除表來解決。
然後再刪除分區表方案,最後就可以直接刪除文件組了。
總結前面的刪除過程:
1、修改分區表,使其不依賴分區方案。
2、刪除分區方案(依賴要刪除的文件組)。
DROP PARTITION SCHEME [Part_func_scheme_Name]
3、直接刪除文件組。
ALTER DATABASE [DataBaseName] REMOVE FILEGROUP [FGName]
DataBaseName表示數據名,FGName 表示文件組名。
2. sql中怎麼刪除本地文件夾下的所有文件
REMOVE FILE 只有在文件為空時才能刪除。
正常操作步驟:
以下操作在查詢分析器上執行即可:
--轉到要處理的資料庫:
use 庫名
go
--查看該庫所有的文件:
select [name],[filename] from sysfiles
go
--對指定的文件進行數據移除:
dbcc shrinkfile (上面查詢得到的「邏輯文件名」(即Name那列), EMPTYFILE)
go
--將一定移除了數據的指定文件刪除:
ALTER DATABASE 庫名 REMOVE FILE 上面查詢得到的「邏輯文件名」
Go