2016年4月3日 星期日

在SQL Server 2012安裝Northwind資料庫

Northwind是微軟提供的範例資料庫,我們可以利用這個資料庫來練習資料庫或程式語言相關的技術,但這個資料庫是SQL Server 2000的範例,安裝在SQL Server 2012可能會碰到一些問題,這篇文章是我自己在安裝時所碰到的問題紀錄。

下載

可以在微軟網站中下載:

安裝

照下面圖示操作即可:




上述步驟完成後在C:\SQL Server 2000 Sample Databases中找到需要的檔案。

問題及解決

現在有兩個方法可以安裝Northwind,一個是Attach Database,另一個是直接執行.sql,我先嘗試了Attach的方式。

Attach Database

在SSMS中對Database按右鍵>Attach
Add>NORTHWIND.MDF>OK

問題1

出現錯誤,點Databases to attach的Message連結,出現錯誤訊息:
Operating System error 5

解決

SSMS要以系統管理員身分執行

問題2

its non-release version(539)is not supported by this version of SQL Server

為何發生

Google發現有人也有同樣的問題:
SQL Server可以還原資料庫的版本只有前面的兩到三個版本,例如我現在用的是2012,那我可以還原的最舊版本就是2005的,所以當然2012沒辦法還原2000的資料庫。

那我們就來看一下執行.sql的方法可不可行好了。

Execute SQL

問題

把instnwnd.sql直接用SSMS執行,會發生下面的錯誤:
Could not  find store procedure 'sp_dboption'
再次請教Google大神:
發現到原來sp_dboption已經被棄用了,要改用ALTER DATABASE。
所以代表我們要把sp_dboption的指令轉乘ALTER DATABASE。
於是我們去查[trunc. log on chkpt.]及[select into/bulkcopy],很幸運的我們在同一個頁面找到:
發現原來這兩行的是在設定復原模式的而且也知道他們要設定的數值,那我們就把這兩行替換成:
ALTER DATABASE Northwind SET RECOVERY SIMPLE
ALTER DATABASE Northwind SET RECOVERY BULK_LOGGED
之後再執行一次SQL就好了。

2014年11月7日 星期五

jekyll使用sass(scss)

目錄結構

.
|-_sass
    |-default.sass
|-css
    |-main.sass

  • 將.sass(.scss)放於_sass資料夾中。
  • 將主css放於css資料夾中。


在main.sass中加入:

---
---
@import "default"

  • 需要加---是因為此檔案是要可以被jekyll所解析的,所以要符合jekyll格式。
  • @import的路徑只要是檔案名就可以了。

在.html中引用的路徑是css/main.css

  • jekyll會將.sass解析為.css所以後面寫.css即可。

PS:


想要變更_sass資料夾位置或名稱,在_config.yml中加入:

sass:
    sass_dir: 路徑

想要將css壓縮,在_config.yml中加入:

sass:
    style: :compressed

參考

將footer element固定於網頁最下方

這篇是看完CSS-TRICKS的Sticky Footer(要看程式碼請參考此連結)之後所理解出來的原理解釋。

步驟


1. 將網頁分為兩個部份:


  1. 網頁主體(page-wrap)
  2. 頁腳區塊(site-footer)

2. 因為是對於margin所作的效果,所以先將其設為0。


3. 將html及body的height設為100%是為了要將網頁設成視窗大小(如果小於視窗大小的話)。


4. 將網頁主體min-height設為100%以符合html大小,而將margin-bottom設為你要的大小的負數,這裡將邊界往內凹,讓頁腳區塊也可以在100%的高度中,但這樣會產生一個問題,當你的網頁長度(height)超過視窗-頁腳區塊的大小時,網頁主體的內容會跟頁腳區塊重疊,為解決這問題,我們需要設置:after。


5. 將網頁主體設定一個:after的區塊,這個after區塊要跟footer一樣大,after區塊會緊跟在page-wrap的內容之後(在page-wrap中),當然他也算在page-wrap的長度裡,這樣子我們就會給page-wrap一個跟site-footer一樣大小的block,也就是利用這個沒有內容(透明)的block去填補原本凹進去的地方,這樣子page-wrap的內容就不會跟site-footer重疊了。

2014年11月5日 星期三

裝設vim-airline font

在安裝vim-airline時有遇到幾個問題,在這裡做個整理。

1. 在terminal中沒有跑出顏色

解決:

在~/.vimrc中寫入下面的程式碼
if $COLORTERM == 'gnome-terminal'
set t_Co=256
endif

參考:

http://askubuntu.com/a/126

2. 安裝之後沒有出現airline

解決:

在~/.vimrc中寫入下面的程式碼
set laststatus=2

參考:

https://github.com/bling/vim-airline#configuration

3.在安裝之後無法完整顯示

解決:

照著https://powerline.readthedocs.org/en/master/installation/linux.html#fonts-installation所給的指示做。

注意:

A. ~/.fonts如果沒有此目錄的話,自己新增(mkdir ~/.fonts)
B. ~/.config/fontconfig/conf.d/如果沒有此目錄的話,新增(mkdir -p ~/.config/fontconfig/conf.d/

2014年11月3日 星期一

Jekyll問題排除

這裡列出幾個在使用Jekyll的時候所遇到的問題,供日後參考。


問題一:在gem install jekyll時遇到ERROR: Failed to build gem native extension.

解決:安裝ruby 1.9.1(sudo apt-get install ruby1.9.1-dev)

參考:
http://hire.chrisjlee.net/node/229
http://jekyllrb.com/docs/troubleshooting/#installation-problems

問題二:在gem install jekyll時遇到ERROR: While executing gem ... (NoMethodError) undefined method `name' for #<RDoc::RubyToken::TkLPAREN:...>

解決:安裝rdoc(gem install rdoc

參考:
https://github.com/jekyll/jekyll/issues/1560

問題三:在執行jekyll時遇到Could not find a JavaScript runtime.

解決:安裝nodejs(sudo apt-get install nodejs)

參考:
http://jekyllrb.com/docs/troubleshooting/#could-not-find-a-javascript-runtime-execjsruntimeunavailable
http://stackoverflow.com/a/9333316

2014年10月28日 星期二

解決git中[fatal: remote origin already exists.]的問題

在要把新的repository送上github的時候都會遇到[fatal: remote origin already exists.]的問題:
新增說明文字
這時候有兩個方式可以解決:
1. 改名(例:origin改成first)
2. 將origin的url改掉

第一個方式

git remote add origin [url]
改成
git remote add first [url]

第二個方式

利用set-url改掉origin的url
git remote set-url origin [url]

參考

取出js或是json檔案中的內容

在解析網頁的時候常常要到其js或是json中去取得資料,像是下面這兩個例子:

因此我寫了一個處理的function,可以輕鬆地拿到想要的資料:

步驟

1. 將空白刪除。
2. 將跳脫字元處理好。
3. 取出再"="跟";"之間的字串。

參考