2011年10月27日 星期四

C# 的 Bookmark 怎麼用?

記得在 Delphi 的時候我們可以對 DataTable 設定書籤,
但是到了 C# 好像就沒有這招可以用了耶?
先說說書籤的用途好了,
簡單的說就是先記錄下來目前這筆 row 的位置,
然後等等可以快速地回到這筆 row 來!
聽起來很簡單吧!
是呀!但是我就是沒找到有 bookmark 的屬性或是函數,
也沒有看到疑似 bookmark 的屬性或是函數咧?
所以決定試一下看看!
然後就寫出了下面的東東:


  1.             DataRow bookmark = CurrentRow;
  2.             grid.BeginUpdate();
  3.             try
  4.             {
  5.                 foreach (DataRow dr in dataTable.Rows)
  6.                 {
  7.                     CurrentRow = dr;
  8.                     DoBringSQL();
  9.                 }
  10.             }
  11.             finally
  12.             {
  13.                 CurrentRow = bookmark;
  14.                 grid.EndUpdate();
  15.             }

2011年10月21日 星期五

(SQL Server)複寫不支援透過伺服器別名、IP 位址或任何其他替代名稱來進行連接

這兩天再設定 SQL Server replication 的時候出現這個錯誤!
原因大概是因為我之前裝好了 SQL Server 之後又跑去改了電腦名稱,
假設原來的電腦名稱叫做 Frankie-Old 好了,
新的電腦名稱叫做 Frankie-New,
所以雖然我用 Microsoft SQL Server Management Studio 可以用 Frankie-New 連上 SQL Server,
但是我用另外一台電腦要設定 replication 連到 Frankie-New 的時候卻會跳出類似下面的訊息,
【複寫不支援透過伺服器別名、IP 位址或任何其他替代名稱來進行連接。Frankie-Old】
真是尷尬呀!
上網 google 了一下,
我們可以下 SELECT @SERVERNAME 來得知我們 SQL Server 的名字,
我查了一下果然是 Frankie-Old 呀!真是尷尬呀~~~
我們可以下 sp_dropserver 'Frankie-Old' 來刪除舊的名稱,
然後 sp_addserver 'Frankie-New', 'local' 來新增,
然後重新啟動這台 SQL Server 吧!
再重新下個 SELECT @@SERVERNAME 就可以看到妳新設定的名字啦!
喔耶!

2011年10月14日 星期五

如何連上 Windows 2008 Server 的 SQL Server 2008?

好啦!簡單的說就是我連不上 Windows 2008 Server 上的 SQL Server 2008 啦!
上網google了一下,
第一先打開TCP/IP的協定,
第二SQL Browser的服務要開,
第三就是打開Windows 2008 Server 的防火牆設定,
就這樣就可以通啦!
參考下面的連結吧!

打開TCP/IP的協定
設定防火牆

微軟的說明如何開啟 Windows Server 2008 上 SQL Server 防火牆連接埠?

可以直接下載這個檔案,
OpenSqlServerPort.rar
執行之後就會把防火牆的prot打開了!