2010年7月29日 星期四

ASP FileSystemObject Sample

<%
   Set fs = Server.CreateObject("Scripting.FileSystemObject")

   ' Create new folder
   if fs.FolderExists("C:\Test2") = false then
      fs.CreateFolder "C:\Test2"
   end if

   ' Copy files
   Set SourceFolder = fs.GetFolder("C:\Test1")
   Set SourceFiles = SourceFolder.files
   if SourceFiles.Count > 0 then
      fs.CopyFile "C:\Test1\*.*", "C:\Test2"
   end if
   Set SourceFiles = nothing
   Set SourceFolder = nothing

   ' Show files name
   Set TargetFolder = fs.GetFolder("C:\Test2")
   for each x in TargetFolder.files
      response.write x.Name & "<br>"
   next
   Set TargetFolder = nothing

   ' Delete jpg files
   fs.DeleteFile("C:\Test2\*.jpg")

   Set fs = nothing
%>

參考 W3CSchools

2010年7月16日 星期五

SQL Server 的 BINARY_CHECKSUM

為了 Update data 的效能及減少 Log 檔大小
在 Update 之前都要先檢查資料是否有異動
一檢查可能就是十幾個欄位在做 Equal to 的比較

SQL Server 本身提供一個 BINARY_CHECKSUM 的 function
input 幾個欄位, 它就會算出這些欄位值的 Check Sum (整數)
所以只要比對 Check Sum 是否相等, 即可知道是否有異動

用法如下
SELECT * FROM TableA, TableB
WHERE TableA.ID = TableB.ID
AND BINARY_CHECKSUM(TableA.Col1,TableA.Col2) <>
BINARY_CHECKSUM(TableB.Col1,TableB.Col2)

參考 TechNet

2010年7月2日 星期五

取得SQL Sever 剛產生的自動編號

如果在SQL Server 中
使用自動編號欄位(int ,自動識別)當Pkey
常會遇到Insert Data 後,要再Update Data 時
不知道Pkey 是多少

剛好查到了一個方法可以使用
SELECT @@Identity

這個語法可以查出這次Connection 中最後產生的自動編號