Friday, November 21, 2014

[SQL] Sequence

MSDN Sequence 說明
建立順序物件,並指定其屬性。 順序是使用者定義之結構描述繫結的物件,該物件會根據建立順序所使用的規格產生數值序列。 數值序列會在定義的間隔依照遞增或遞減順序來產生,而且在用完時可設定為重新啟動 (循環)。 順序不會與特定資料表產生關聯,與識別欄位不同。 應用程式會參考順序物件,以擷取它的下一個值。 順序與資料表之間的關聯性是由應用程式所控制。 使用者應用程式可以參考順序物件,並協調跨越多個資料列和資料表的值。
  • 建立 Sequence 語法
[SQL] Sequence - 6
  • 預設值 Sequence
IF EXISTS(SELECT 1 FROM sys.sequences WHERE name = 'DefaultSeq')
    DROP SEQUENCE dbo.DefaultSeq

CREATE SEQUENCE dbo.DefaultSeq
[SQL] Sequence - 1
  • Sequence 物件設定值查詢語法
SELECT 
    S.Name AS N'順序物件',
    S.start_value AS N'起始值',
    S.increment AS N'遞增值',
    S.current_value AS N'目前值',
    T.name AS N'資料類型',
    S.minimum_value AS N'最小值',
    S.maximum_value AS N'最大值',
    S.is_cycling AS N'循環',
    S.is_cached AS N'快取',
    S.cache_size AS N'快取大小',
    S.create_date AS N'建立日期',
    S.modify_date AS N'修改日期',
    S.cache_size AS N'快取值'
FROM sys.sequences AS S 
    JOIN sys.types AS T ON S.system_type_id = T.system_type_id
[SQL] Sequence - 8

Thursday, November 20, 2014

笠頂山

趁著宗達從美國回來,要前往荷蘭的空檔,大家相約出來走走,沒想到這是對我的體能大考驗,201301 來笠頂山時一整個輕鬆寫意,這次來上和下都還走最輕鬆的路線,我一整個快掛掉了,尤其是要上到三角點的最後一段陡坡,真的是有力不從心的感覺,這半年來睡眠不足的後遺症吧,體力超差的 ~~ >.<
  • 故意和三角點拍張 Orz ~~
201411 笠頂山
  • 最進春風得意的朝龍和總是不在台灣工作的宗達
201411 笠頂山

Tuesday, November 18, 2014

[Win] iSCSI 目標伺服器 - Target

以下為建立 iSCSI 目標筆記,該伺服器名稱為 iSCSITarget

Step 1:建立 "iSCSI 目標伺服器" 伺服器角色

[Win] iSCSI 目標伺服器 -Target-1

Step2:伺服器管理員 => 檔案和存放服務 => iSCSI => 工作 => 新增 iSCSI 虛擬磁碟

[Win] iSCSI 目標伺服器 -Target-2


Monday, November 17, 2014

[C#] 檔案系統監視

論壇問題上看見這個 FileSystemWatcher 這個功能,趕快找資料來了解並筆記
using System.IO;
namespace FileMonitor
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            txtLog.Multiline = true;
            txtLog.Dock = DockStyle.Bottom;
            // 預設監視資料夾
            txtPath.Text = @"D:\WatchDemo";
            // 檔案篩選選項
            cboExtension.Items.Add("");
            cboExtension.Items.Add("*.txt");
            cboExtension.Items.Add("*.jpg");
            cboExtension.Items.Add("*.docx");
            cboExtension.Items.Add("*.xlsx");
            // 預設篩選的副檔名
            cboExtension.Text = "*.txt";
        }

        private void btnBrowse_Click(object sender, EventArgs e)
        {
            FolderBrowserDialog FBD = new FolderBrowserDialog();
            // 預設開啟位置為使用者桌面
            FBD.RootFolder = Environment.SpecialFolder.Desktop;
            if (FBD.ShowDialog() != DialogResult.OK || string.IsNullOrEmpty(FBD.SelectedPath)) return;
            txtPath.Text = FBD.SelectedPath;
        }

        private void btnRun_Click(object sender, EventArgs e)
        {
            string path = txtPath.Text;
            if (string.IsNullOrEmpty(path)) return;

            FileSystemWatcher watch = new FileSystemWatcher();
            //設定監視資料夾
            watch.Path = path;
            // 是否包含子目錄,預設為 true
            watch.IncludeSubdirectories = true;
            // 設定篩選條件
            string extension = cboExtension.Text;
            if (!string.IsNullOrEmpty(extension)) watch.Filter = extension;
            // 設定監視檔案變化類型
            watch.NotifyFilter = NotifyFilters.FileName | NotifyFilters.LastWrite;

            // FileSystemWatcher 偵測事件是否啟動,預設為 true
            watch.EnableRaisingEvents = true;
            // 事件觸發時,藉由 delegate 引用 watchMessage 方法
            watch.Deleted += watchMessage;
            watch.Changed += watchMessage;
            watch.Created += watchMessage;
            watch.Renamed += watchMessage;
        }

        private void watchMessage(object sender, FileSystemEventArgs e)
        {
            string message = string.Format("檔案 {0} 被 {1}", e.FullPath, e.ChangeType);
            txtLog.Text += message + Environment.NewLine;
        }
    }
}

[C#] 檔案系統監視

Sunday, November 16, 2014

你又忘了嗎?

和太太的阿呆對話
  • 媽:你又忘了嗎?已經快要到期了
  • 爸:到期,是哪本書要還回圖書館啊
  • 媽:你又忘了嗎
  • 爸:我真的忘記了阿,可以跟我說是哪本書要還嗎 ~~ > . < ~~
  • 媽:"你又忘了嗎" 阿 ~~
  • 爸:恍然大悟,我們真的有去借一本書叫 "你又忘了嗎?" Orz ~~

你又忘記了嗎