技術
Articles
MSSQL中換行符號的更換
微軟的MSSQL的換行符號(rn),可以使用特殊的方式找出來,如下:
UPDATE SET = REPLACE (, CHAR(13) + CHAR(10) , '<br/>')
0
minutes
MSSQL中遞迴的寫法
微軟的MSSQL也有遞迴功能,寫法如下,看起來有點奇怪,需要適應一下。
WITH AppCTE(, , ) AS
(
-- Anchor Query
SELECT , , FROM WHERE = 128
UNION ALL
-- Recursive Query
SELECT m., m., m. FROM ...
0
minutes
Oracle SQL遞迴處理
遞迴,英文說法是Recursive,簡單的說就是類似Window中資料夾的概念,可以進行無限分類樹,在資料庫中如何實現遞迴,主要就是透過ID與PID,ID是識別自己的資料,PID是父ID(或上一層的ID),這樣就可以製造出遞迴的結構,Oracle中可以用以下語法把遞迴資料撈出來。
SELECT *
FROM TABLE A
START WITH A.ID = 'ROOT'
CONNECT BY PRIOR A.ID = A.PID
0
minutes
透過SQL句避免資料重複新增
有時候可以透過SQL句就能避免資料重複新增,當然也可以用老派的方式,先Select Count(1)確定沒有資料後再Insert,單句SQL就能做到,請參考以下適用於Oracle的情況:
INSERT INTO TABLE1 (Column1,
...
0
minutes
最佳的版控系統方案
最佳的版控系統方案應該是不存在的,正解是根據專案狀況選擇最適合的就是最佳的。
最早的版控是檔案取出與存回,可以透過FTP或SMB的方式進行。但實際這不能叫做版控,只能鎖定檔案避免另一個人蓋台,但阻止不了自己蓋台的悲劇。
真正進入版控開始是集中式版控,經典代表CVS與SVN,集中式的缺點,當沒有網路可連線到伺服器,就無法作業,因此有了分散式版控,經典代表就是GIT,有關版控演化說明可以參考這篇。
GIT作為主流分散版控代表,每個客戶端都可以當作是伺服器的備份,這種去中心化的分散運算作法,就是一種區塊鏈,跟邊緣運算又有那麼一點相似。
但話說回來,通常會用到版控,往往是有多個人在寫CODE,大家都各自分工,必定要同步,因此就有GitLab的出現,提供一個管理平台讓團隊可以交換。
最適方案是什麼?相信GitLab會滿足大部分專案需求。
0
minutes