SQL 同步錯誤

同步發生
{CALL sp_MSdel_iear00d1 (112792)}
Transaction sequence number and command ID of last execution batch are 0x0004341B000287D0000100000000 and 2.
錯誤,該如何查到 是那些資料 重複?

先在同步主機distribution 資料庫,使用
sp_browsereplcmds @xact_seqno_start='0x0004341B000287D0000100000000' ,
@xact_seqno_end='0x0004341B000287D0000100000000'
查詢問題資料值。

再針對相關的資料記錄,來加以處理。

xact_seqno / originator_id / publisher_database_id / article_id / type / command
0x0004341B000287D0000100000000    0    1    112    30    {CALL sp_MSdel_iear00h (65799)}
0x0004341B000287D0000100000000    0    1    163    30    {CALL sp_MSdel_iear00d1 (135490)}

C#_預處理器指令

 

C#_預處理器指令

C# 使用 TODO 工作清單註解

在 Visual Studio .NET 的環境中,可以使用工作清單(Task List) 來快速找到要處理的程式區域。

工作清單

由上圖片可以看到 工作清單 的系統預設 KeyWord 有 HACK, TODO, UNDONE, UnresolvedMergeConflict
另外,也可以自行設定,並加設優先權(Priority)

 

對於,要看到已設定好的 工作清單 註解,可如下圖操作:工作清單-02

 

資料來源:http://msdn.microsoft.com/zh-tw/library/zce12xx2.aspx

SQL 資料庫的 邏輯 File Name 變更

 

看到圖中的 File Name 與 資料庫的實際名稱不同,真是怪怪!!

mdf

再加上近來,想將數量眾多的資料庫,以批次方式逐一 Restore 簡化繁瑣的作業及時間,才發現到這個 File Name 是乎不能視而不見,所以興起”改名”的念頭。

首先,回首 Restore 的用法:

  1. 一般型:(將備份資料庫回復成 DB27 ,資料庫存放位置是在 系統默認路徑。)
    RESTORE DATABASE DB27 FROM DISK = 'D:\A-Zip\DB27_20100105\DB27-2010-01-05.bak' 
    Go
  2. 技巧用法:(將備份資料庫回復成 DB27 ,資料庫存放位置是在 指定存放的路徑 中:E:\SQL_DB。)
    RESTORE DATABASE DB27 FROM DISK = 'D:\A-Zip\DB27_20100105\DB27-2010-01-05.bak' 
    WITH
    MOVE 'DB15_Data' TO 'E:\SQL_DB\DB27.mdf',
    MOVE 'DB15_Log' TO 'E:\SQL_DB\DB27_log.ldf'
    Go

在上述的指令中
MOVE 'DB15_Data' TO 'E:\SQL_DB\DB27.mdf',
MOVE 'DB15_Log' TO 'E:\SQL_DB\DB27_log.ldf'

DB15_Data、DB15_Log 就是 SQL 的 邏輯 File Name
'E:\SQL_DB\DB27.mdf'、'E:\SQL_DB\DB27_log.ldf' 則是回復資料庫的存放位置及檔名。

變更 Logical File Name 的語法:
USE master;
GO
ALTER DATABASE database_name
MODIFY FILE
(NAME = logical_file_name, NEWNAME = new_logical_name);
GO

實例語法:
USE master;
GO
ALTER DATABASE DB27 MODIFY FILE (NAME = IEDB15_Data, NEWNAME = IEDB27_Data );
GO
ALTER DATABASE DB27 MODIFY FILE (NAME = IEDB15_Log, NEWNAME = IEDB27_Log );
GO

 

經過這樣的修正後,Restore 的指令就變成:(順眼多了)
RESTORE DATABASE DB27 FROM DISK = 'D:\A-Zip\DB27_20100105\DB27-2010-01-05.bak' 
WITH
MOVE 'DB27_Data' TO 'E:\SQL_DB\DB27.mdf',
MOVE 'DB27_Log' TO 'E:\SQL_DB\DB27_log.ldf'
Go

*.csproj.user 何時會產生?

在使用 Visual Studio 2005 工具,C# 程式語言開發時,無意間發現到程式目錄中,多出一個檔案

*.csproj.user

一直納悶這檔案是在何時會由系統自動產生?

經多次追蹤後,發現其產生的時機點是在曾經啟用 Show All Files 功能,只要關閉 專案(solution),系統就會自動生成該檔案。

image

該檔案的內容有兩種情形:

1. 開啟 Show All Files
<Project xmlns="http://www.blogger.com/'http://schemas.microsoft.com/developer/msbuild/2003>
<PropertyGroup>
<ProjectView>ShowAllFiles</ProjectView>
</PropertyGroup>
</Project>

2. 開啟 Show All Files
<Project xmlns="http://www.blogger.com/'http://schemas.microsoft.com/developer/msbuild/2003>
<PropertyGroup>
<ProjectView>ProjectFiles</ProjectView>
</PropertyGroup>
</Project>

PowerShell Script

DownLoad Windows PowerShell from: http://www.microsoft.com/technet/scriptcenter/topics/msh/download.mspx

Blog : http://pshscripts.blogspot.com/

PowerShell 相關資源:

1.下載PowerShell 1.0 (PowerShell 2.0 CTP也出來了,只可惜不支援Windows 2003)
http://www.microsoft.com/downloads/details.aspx?FamilyId=10EE29AF-7C3A-4057-8367-C9C1DAB6E2BF&displaylang=en

2.PowerShell CheatSheet,撰寫PowerShell時用的小抄,不過內容略嫌簡單、涵蓋範圍不大,有點不夠用的感覺。
http://www.microsoft.com/downloads/details.aspx?FamilyId=DF8ED469-9007-401C-85E7-46649A32D0E0&displaylang=en

3.PowerShell HelpFile。CHM格式的說明文件,寫得很詳細也很淺顯易讀,是佛心級的好文件,其中VBScript與PowerScript的指令對照表更是功德無量!!!
http://www.microsoft.com/downloads/details.aspx?FamilyId=3B3F7CE4-43EA-4A21-90CC-966A7FC6C6E8&displaylang=en

For more information on Windows PowerShell visit:
http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx

Microsoft TechNet Script Center
http://www.microsoft.com/technet/scriptcenter/default.mspx

跑ps1 Script檔時,會先遇到此錯誤:
File C:\Program Files\Console2\check-file.ps1 cannot be loaded because the execution of scripts is disabled on this system. Please see "get-help about_signing" for more details.
At line:1 char:15
+ ./check-file.ps1 <<<<

基於安全的理由,ps1 Script預設是不給跑的,記得用以下的指令調整安全設定:
Set-ExecutionPolicy RemoteSigned

資料引述:http://blog.darkthread.net/blogs/darkthreadtw/archive/2007/11/23/my-first-powershell-script.aspx

針對目錄中特定檔案的解壓指令_7z

 

    平常,對於檔案或是目錄的壓縮、解壓,都習慣在 Windows GUI 介面操作,一點也不覺得困擾。

    有次,因為工作關係要連續性的處理很多相同步驟的解壓工作,加上每次解壓時間長短不一,有些需要解上 30 ~ 40分鐘;心想,總不能這樣等.....,才能繼續下一個解壓工作。這時候,就想到 DOS 的批次作業用法。

    經過多次測試,發現要解壓一個完整的目錄:容易。但是要從一個被壓縮目錄中,解出特定的檔案來,就要有點”技巧”。

    下列用法,是以產生 .7z 解縮格式的 7z 程式為範例:

  1. 解壓一個完整的目錄,到指定的目錄位置下
    "C:\Program Files\7-Zip\7z"  x  Z:\DB01_20091218.7z  -oD:\A-Zip
  2. 從一個被壓縮目錄中,解出特定的檔案,到指定的目錄位置下
    "C:\Program Files\7-Zip\7z"  x  Z:\DB01_20091218.7z  -oD:\A-Zip  DB01-2009-12-18.bak  -r