天天看點

時間戳

時間戳,也叫做Unix時間戳,就是從1970年1月1日0時0分0秒到目前時間的總秒數。

ruby中時間戳的使用

在ruby中通過to_i方法來擷取這個值。

如果需要把時間戳轉換為具體的時間,通過Time.at方法來轉換。

C#中時間戳的使用

在C#中沒有時間戳的概念,沒有直接擷取時間戳的類庫,不過根據定義我們可以自己寫一個方法。

擷取時間戳

由時間戳轉換為時間

在SQL Server中使用時間戳

在SQL Server也沒有直接擷取時間戳的方法,我們還是可以根據定義來寫。

從時間戳轉換為時間

在SQL Server中還有一個容易和“時間戳”搞混的概念。

在SQL Server中,有一種列的類型叫做TIMESTAMP,這個TIMESTAMP翻譯成中文也叫做“時間戳”。但是這個TIMESTAMP不是前面介紹的時間戳,不是從1970年1月1日0時0分0秒到目前時間的總秒數。

這個TIMESTAMP和時間沒有任何的關系,它是一個二進制的數值,一張表隻能有一個TIMESTAMP列,TIMESTAMP列不需要手動插入和更新。

在增加一行資料的時候,TIMESTAMP列就會自動添加,更新這行資料的時候,TIMESTAMP列會自動被更新成新值。

如果你使用select語句查詢的話,TIMESTAMP列會顯示為0x0000000000031511。

這個TIMESTAMP在SQL Server的表中是一個行版本的概念,可以用來做樂觀并發控制。如果資料在擷取到修改的中間有其他使用者進行了修改,TIMESTAMP列就會自動發生變化,再次修改的時候就可以把TIMESTAMP作為比對條件,來阻止修改,或者做其他的提示。

如果我們的某些資訊需要版本的概念,同時隻需要知道版本發生變化,而且不顯示版本号,可以使用TIMESTAMP列,就不用自己設計編号來維護了。

參考文獻

1.百度百科-時間戳 

上一篇: 時間戳
下一篇: 時間戳