2011-12-29 9 views
0

現在、デフォルトの制約のあるデータ型がdatetimeの列があります。今私はタイムスタンプのようなデータ型として変更したい。SQL Server 2008のタイムスタンプデータ型

alter table tblname 
alter column date_modified timestamp not null 

私はdate_modifiedという列は、最近の時間で更新する必要がありますレコードを更新するたびに私の本来の要件があります。

これは、私はSQL Server 2008で、この中に実行することができますどのようにデータ型TIMESTAMPとデフォルト値CURRENT_TIMESTAMP

とMYSQLで働いているのと同じ機能です??

+1

回答を投稿した人には、私は彼がMS SQLのMySQLタイムスタンプを模倣する方法を尋ねていると思います。私が知っている唯一の方法はトリガーです(うまくいけば誰かがより優雅な解決策を知っているでしょう) – Prescott

+0

トリガーを使ってそれを行うことができますhttp://msdn.microsoft.com/en-us/library/ms189799.aspx –

+0

私は思っていません彼の考えを気にする。私は彼の心を読んでいるのではない。私は彼が求める質問に答える。そして、以下の答えが彼の質問に答えています。どのような質問をするのかを学び、問題解決のために少なくとも30秒間使用することは、プログラミング方法を知っている人たちとスクリプトの児童を区別するものです。ごめんなさい。彼が別の質問に答えることを望むなら、彼はそれに尋ねることができる。質問することでお金がかかることを求めるようなことではありません。 – TomTom

答えて

6

Timestamp in MySQLを、それを設定する方法はありませんで、 timestamp in SQL Serverは同じものではありません。 datetimeのままにして、after updateトリガーを追加して、date_modifiedgetdate()に更新します。

+0

あなたの答えをありがとう、私はあなたの答えの方法が好きです。 –

+0

ありがとう@Mikael。これは私が最初にやっていた方法です! datetimeではなくSQLのタイムスタンプを使用しようとしていました!今度は、SQLの 'timestamp'がUNIXの' timestamp'でもT-SQLの 'timestamp'でもないことを読んでいます。私は '日時計 'と一緒に仕事を続けなければならないと思う。非常にありがとうございます – Bellash

+0

ここで私はhttp://technet.microsoft.com/en-us/library/aa260631%28v=sql.80%29.aspxを参照してください.SQLの 'timestamp'もUNIXの' timestamp'もT-SQLの 'timestamp'です。私は '日時計 'と一緒に仕事を続けなければならないと思う。ありがとうございます – Bellash

4

実際にTIMESTAMPタイプがSQL Serverにあるものを確認しましたか? TIMESTAMP type in mysqlとは異なります。ドキュメントは言う:

は、データベース

内で自動的に生成された、ユニーク進数を公開したデータ型は、だから、「現在の時刻」に

+0

回答ありがとうございます –