[轉貼] 海美迪HD300A常見問題解答(字幕、網路、共享)

http://www.hdpop.cn/forum.php?mod=viewthread&tid=12509

 

HD300如何訪問windows檔共用檔
1)window主機上,先共用好資料夾
2)關閉windows的防火牆,以及相應有防火牆功能的軟體;
3)HD300配置網路,位址保證和windows主機在同一個局域網
4)進入檔流覽,選擇“網路SMB”
5)進入“My_Shortcuts”
6)按遙控器“藍色鍵”,選“加入”,輸入用戶名、密碼和windows的主機IP (如果沒有設置許可權,用guest、guest)
7)確定,

如果非xp系統,是win7系統,

用管理員身份運行註冊表
打開
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\按兩下 everyoneincludesanonymous 將裡面的值修改為1
按兩下 NoLmHash 將裡面的值修改為0
========================================================
打開
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters

按兩下 restrictnullsessaccess 修改為 0
重啟電腦 

ROW_NUMBER及RANK

ROW_NUMBER:

兩個TABLE,T1為Master,T2為Detail,取出同一PK在T2的第N筆資料

SELECT *
FROM Table_1 T1
   INNER JOIN (
      SELECT *
             , ROW_NUMBER() OVER (PARTITION BY PK ORDER BY PK) RID
      FROM Table_2) T2
   ON T1.PK = T2.PK
      AND T2.RID = 取第N筆

參考:ROW_NUMBER (Transact-SQL)

RANK:

很類似ROW_NUMBER的用法,但相同的資料相同排名,下一個不同會【跳脫】

SELECT *
FROM Table_1 T1
   INNER JOIN (
      SELECT *
             , RANK() OVER (PARTITION BY PK ORDER BY PK) RID
      FROM Table_2) T2
   ON T1.PK = T2.PK
      AND T2.RID = 取第N筆

參考:RANK (Transact-SQL)

其他參考:[SQL]為查詢的結果加上序號(ROW_NUMBER,RANK,OVER)

舉一反三

十月十日的隔天,一大早上班嚴重的MONDAY BLUE,
努力地打起精神,開工!!

上午的開會及整理待辦事項已經讓我昏昏欲睡,
而下午的問題單,卻讓我邊改程式邊碎碎唸,
該怎麼說呢!! 就是程式很難改起….

不知大家有沒有這樣的經驗,
明知這樣的寫法很笨,明知這樣之後的人會很難維護,
但為了怕改動太多,還是先照原本的方法改.

今天遇到的案例是:
類似的程式重覆的COPY PASTE寫了四次,
很容易改了其中一個,而漏改到其他的,
偏偏這程式的支數又有20多支,每支行數也多….

異動的規格對的辛苦,改出的明細值加總卻老是不對,
邊改邊唸,

「寫這程式的PG有沒有SENCE呀!!」
「什麼叫效能沒法調,明明GARBAGE的部份就一堆….」
「註解都不寫清楚,超難對的」
……. 

愈改愈多支,心一橫,

「就改寫好了,要不然後續BUG不知還會有多少」

雖老大不爽,但還是花時間改寫,把重覆的部份改為統一處理.


有種感嘆,從小老爸就教我要「舉一反三」,
被交付某件事的當下,就要想到後續的動作,
就像叫去餐廳吃飯,會自動找餐具一樣,不用老闆多說.

程式也是如此,在寫前先想想

  • 程式為什麼要這樣寫?
  • 程式是否清楚易懂?
  • 之後想異動,會不會容易維護?

這不是我第一次改別人程式了,但改有SENCE的程式就感覺像是上了堂課,如沐春風,
但爛程式呢? 心情愈改愈糟而已.

既然這支程式掛上了你的名字,就要負上相當的責任,把自己當作品牌來經營,
期許之後的人一提到你,總是豎起大拇指說,「他寫的程式很有品質,很有SENCE」,
就不枉當一位PG了.

老人家總愛碎碎唸,特以本文自勵及警惕之.

[轉貼]如何清除 Management Studio 登入時的伺服器名稱歷史清單

原文網址

1. 刪除 SQL Server 2008 / SQL Server 2008 R2 的 Management Studio 的歷史清單

請在 命令提示字元 或 [開始] / [執行] 下執行以下指令即可清空歷史清單:

DEL "%appdata%\Microsoft\Microsoft SQL Server0\Tools\Shell\SqlStudio.bin"

2. 刪除 SQL Server 2005 的 Management Studio 的歷史清單

請在 命令提示字元 或 [開始] / [執行] 下執行以下指令即可清空歷史清單:

DEL "%appdata%\Microsoft\Microsoft SQL Server\Tools\Shell\mru.dat"

[轉貼]MS-SQL 產生 日期及星期

原文網址

---#### 設定每周的開始是星期幾
SET DATEFIRST 1

DECLARE @STARTDATE DATETIME,
@ENDDATE DATETIME;

---#### 設定要產生日期的區間
SELECT @STARTDATE = SUBSTRING(CONVERT(varchar(8),GETDATE(),112),1,6) + '01',
@ENDDATE = CONVERT(VARCHAR(8),DATEADD(dd,-1,DATEADD(mm,DATEDIFF(m,0,GETDATE())+1,0)),112);
---#### 產生日期跟星期

;WITH CTETABLE AS (
SELECT [Date] = @STARTDATE
UNION all
SELECT [Date] + 1 FROM CTETABLE WHERE ([Date] < @ENDDATE)
)
SELECT
CONVERT(VARCHAR(8),[Date],112) AS [Date],
CASE datepart(DW, [DATE])
WHEN '1' THEN '星期一'
WHEN '2' THEN '星期二'
WHEN '3' THEN '星期三'
WHEN '4' THEN '星期四'
WHEN '5' THEN '星期五'
WHEN '6' THEN '星期六'
WHEN '7' THEN '星期日' END AS [WeekDay]
FROM CTETABLE

「is null」、「= null」的差異

已習慣抓出null的資料,要下where 某某欄位 is null了,
今天臨時被USER問到「is null」、「= null」這兩者的差異在哪?

以下截取MSDN的說明:

http://technet.microsoft.com/zh-tw/library/ms188795.aspx

若要判斷運算式是否為 NULL,請利用 IS NULL 或 IS NOT NULL 來取代比較運算子 (如 = 或 !=)。當兩個引數或其中一個引數是 NULL 時,比較運算子會傳回 UNKNOWN。

http://technet.microsoft.com/zh-tw/library/ms191270.aspx

比較 Null 值時需要特別注意。比較的行為會根據 SET ANSI_NULLS 選項的設定而有所不同。

當 SET ANSI_NULLS 是 ON 時,比較一個或多個 Null 運算式不會產生 TRUE 或 FALSE 的結果,而會產生 UNKNOWN。這是因為未知的值無法與任何值進行邏輯比較。如果運算式與常值 NULL 比較,或是兩個運算式互相比較但其中有一個是 NULL 值,就會發生此狀況。