2014-09-03

[MS SQL] 搬移MS SQL Server 資料庫MDF檔

因為沒有經驗所以當初MS SQL Server上線時,皆以預設值安裝,
也就是說,資料庫檔MDF和交易記錄檔LOG,皆存放於系統槽內,
最近發現C槽的空間已經快要被用滿了,後來一查才發現,
原來是資料庫MDF檔,隨著上線時間時間逐漸膨脹,
今天以卸離、添加的方式搬移資料庫檔案,以釋放系統槽空間,步驟相當簡單。

2014-08-21

[MS SQL] 修改使用中資料庫的定序

--修改前將資料庫設定為單一使用者模式(SINGLE_USER)
ALTER DATABASE DBName 
SET SINGLE_USER 
WITH ROLLBACK IMMEDIATE

--修改資料庫定序
ALTER DATABASE DBName COLLATE Chinese_PRC_Stroke_CI_AS

--修改後將資料庫改回允許有權限之帳號存取模式(MULTI_USER) 
ALTER DATABASE DBName 
SET MULTI_USER

參考自
MSDN-ALTER DATABASE SET 選項 (Transact-SQL)
MSDN-將資料庫設定為單一使用者模式

2014-08-19

[MS SQL] 字串(前中後)含有空白字元問題 LEN()、DATALENGTH()

今天在做字串資料處理時,跑處來的結果一直有問題,後來逐步測試才發現,
寫了那麼久的程式,我竟然沒有注意到,如果使用LEN()函數,
空白字元如果位於字串的後方,計算字串長度時,是會省略不計算的,

select '前面空白'=CONVERT(VARCHAR,LEN(' 123ab')),
  '中間空白'=CONVERT(VARCHAR,LEN('12 3ab')),
  '後面空白'=CONVERT(VARCHAR,LEN('123ab '))

/*----------------------------------結果----------------------------------*/
前面空白                           中間空白                           後面空白
------------------------------ ------------------------------ ------------------------------
6                              6                              5

這次需要改用DATALENGTH()計算,才可以正確抓取字串長度!

select '前面空白'=CONVERT(VARCHAR,DATALENGTH(' 123ab')),
  '中間空白'=CONVERT(VARCHAR,DATALENGTH('12 3ab')),
  '後面空白'=CONVERT(VARCHAR,DATALENGTH('123ab '))

/*----------------------------------結果----------------------------------*/
前面空白                           中間空白                           後面空白
------------------------------ ------------------------------ ------------------------------
6                              6                              6

但是有一點需要注意,DATALENGTH()是計算位元組,
當資料型態是NCHAR()、NVARCHAR()時,取得的長度會不一樣!

select 'VARCHAR'=CONVERT(VARCHAR,DATALENGTH(CONVERT(VARCHAR,'2238# '))),
  'NVARCHAR'=CONVERT(VARCHAR,DATALENGTH(CONVERT(NVARCHAR,'2238# '))),
  'NCHAR'=CONVERT(VARCHAR,DATALENGTH(CONVERT(NCHAR,'2238# ')))

/*----------------------------------結果----------------------------------*/
VARCHAR                        NVARCHAR                       NCHAR
------------------------------ ------------------------------ ------------------------------
6                              12                             60

2014-08-07

[MS SQL] 快速刪除資料庫中所有表格內資料

最近公司SQL Server在做移轉主機動作,因為牽涉到降版(2008 R2 Express -> 2008)的問題,
無法直接備份還原資料庫到新主機,所以一直在測試複製數據的方式,
一開始很笨的每次都將資料庫整個刪掉再透過語法重新建立表格,
因為懶的慢慢測試,後來還是google到了方法~

2014-08-04

[育兒] 使用webofcam-自架免費wifi嬰兒監視器

原本還擔心小朋友都五個月大了怎麼完全不會翻身,
結果某天突然學會之後便無時無刻都想要翻身,
因為已經不像以前肯乖乖的躺著,此時便需要時時在旁邊注意,避免發生危險。

老婆自己在家帶小朋友真的很辛苦,一堆事情要做,
擠奶、做副食品、清潔環境,零零碎碎的事情很多,
但總不能無時無刻都把小朋友綁在身邊,尤其夏天,沒在冷氣房一不小心會起汗疹、熱疹的,
如果小朋友願意躺著自己玩,我們就盡量都讓他自己躺著,
因為家裡是透天厝的關係,房間在2樓,每次這樣跑上跑下的也不是辦法。

2014-05-16

[Delphi] 刪除Reopen file 紀錄

於命令提示字元輸入regedit修改登陸檔,
依據下圖路徑,將Closed file下的資料刪除即可!

參考自:爱点Delphi

2014-05-02

[育兒] 彰化成美醫院月子中心

月子中心的口袋名單原本有 彰基、楊漢銘、成美,
不過既然打算在成美做產檢跟生產,看過環境後,
覺得還可以,為避免老婆生產完舟車勞頓就直接決定在成美月子中心,
其他家就沒有去看過,所以這邊直接以成美月子中心介紹為主。

2014-05-01

[攝影] 我的數位照片整理術

雖然我攝影是我的興趣,但不是會專程拿著相機出去外面拍照的人,
2013年從老婆懷孕後就很少出門去玩,自然拿起相機按下快門的機會就少了很多,
照片也是少的可憐,大多都只用iphone隨身記錄而已,
但是隨著今年小朋友的報到,假借拍小孩藉口買了SONY A6000L後,
現在小朋友在哪裡,幾乎相機就跟到哪裡,
所以整個照片的數量大爆炸,每天拍一點拍一點,一個月下來也不少,
再加上,現在開始養成習慣會將相片加上tag,方便以後找照片,
所以現在整理一次照片都要花點時間,不像以前把不好看的刪掉弄個資料夾存放就好
也因為這些原因,便開始尋找好用的照片整理工具,
不過似乎沒有一套可以直接完成我的需求,
所以我就用...

2014-04-28

[DIY] 帶路雞

傳統習俗女方在準備嫁妝時,都會有一個叫做"帶路雞"的東西,
去年結婚時老婆嫌外面嫁妝店的都不好看又不實用,
乾脆就自己買材料包回家手做,現在就擺在床頭當作擺飾,
去年忘記要記錄一下製作過程,
今年剛好妹妹要出嫁,老婆決定再做一個送給小姑,
超可愛-帶路雞-娃娃

2014-04-24

[敗家] 小米小鋼炮藍牙喇叭

我只能說,小米的東西,實在是非常有創意又便宜,
踏入小米的網站,一不小心就會發現購物車裡面怎麼有東西等著結帳了XD

小米因各國分公司經營問題所以大陸小米東西無法直接寄回台灣,
網路上常見的教學是利用集貨的方式轉運回到台灣(例如...爽購),
不過這樣會有一個問題,當發貨量大後大陸小米可能會將該住址列入黑名單禁止發貨並退款,
所幸剛好同事前往大陸出差,就麻煩請他幫忙帶回台灣,
這次買了 小米小鋼炮藍牙喇叭、小米隨身WIFI、傳輸線 及 手機繩,
加起來一千二有找,自己愛花錢又安慰自己,
你看看,買這麼多東西台幣不到1200...( 飛踢

這篇就先介紹-小米小鋼炮藍牙喇叭

規格(擷取至官網)