2012年6月15日 星期五

C# - 如何移除未知名稱的事件 - LookupEdit.KeyDown


之前寫過【C# 如何移除未知名稱的事件 - BarButtonItem.Click】,
然後剛好今天又要用到相關的觀念,
只不過今天要移除的是 LookupEdit.KeyDown ,
所以基本上這一篇只是紀錄一下,
萬一以後要用的時候可以直接拿來用這樣!

程式碼如下:

SQL SERVER - 修改資料庫邏輯名稱、移動資料庫檔案

雖然我不是處女座的,
但是我有習慣會想把相同的東西歸在同一個地方,
這樣以後找起東西來也比較好找。
資料庫的東西也是,基本上我都會放在 C:\DBFile 的資料夾下面,
不過有時候新增資料庫的時候會忘了改路徑;

程式開發的初期有時候無可避免的系統名稱改變了!(雖然是一樣的東西)
但是之前資料庫的名稱已經是用就名稱了,
以前想要改變的話大概只能備份下來之後再 restore 回去到新的資料庫,
不過今天突然覺得很懶,想說應該有比較直接的方式吧?
所以上網估狗了一下!語法大致如下:


--修改資料庫邏輯名稱
Alter DataBASE DB_NAME
MODIFY FILE(NAME= 'DB_NAME' ,NEWNAME= 'DB_NAME-BACKUP' )
Alter DataBASE DB_NAME
MODIFY FILE(NAME= 'DB_NAME_log', NEWNAME= 'DB_NAME-BACKUP_log' )

--查詢資料庫實體檔案位置
SELECT name, physical_name AS CurrentLocation, state_desc
FROM sys.master_files
WHERE database_id = DB_ID(N'DB_NAME');

ALTER DATABASE DB_NAME SET OFFLINE;

--OFFLINE 之後要手動複製實體檔案到想要的位置
--移動實體資料庫檔案
ALTER DATABASE DB_NAME
MODIFY FILE ( NAME = [DB_NAME-BACKUP], FILENAME = 'C:\DBFile\DB_NAME-BACKUP.mdf' );

ALTER DATABASE DB_NAME
MODIFY FILE ( NAME = [DB_NAME-BACKUP_log], FILENAME = 'C:\DBFile\DB_NAME-BACKUP_log.ldf' );

--必須先手動修改檔案的存取權限
ALTER DATABASE DB_NAME SET ONLINE;

--修改資料庫名稱
EXEC sp_rename 'DB_NAME', 'DB_NAME-BACKUP', 'DATABASE'

這樣大致OK了!進步始終來自惰性!

參考網址:移動使用者資料庫