1

私は ado.net エンティティ モデルに取り組んでおり、SQL テーブルにデータを挿入したいと考えています。SQL テーブル構造を以下に示します。

ID int,
Name varchar(20),
EventTime Timestamp

entitymodel を使用して SQL テーブルにデータを挿入しようとしていますが、テーブルにデータが挿入されません。

私の引き継ぎの議論は(1,"Test")、それが機能していないということです。

合格(1, "test", new Datetime())するとうまくいくことがわかりました。

誰かがその理由を教えてもらえますか?

タイムスタンプの値が SQL サーバーによって自動的に挿入されることを理解しています。

4

1 に答える 1

1

「タイムスタンプ」データ型は、フィールドが変更されるたびに自動的に更新されるバイナリ値を提供しますが、適切な日付/時刻値は提供しません。

更新: MSDN によると: タイムスタンプは、データベース内で自動的に生成された一意の 2 進数を公開するデータ型です。通常、timestamp はテーブル行にバージョン スタンプを付けるメカニズムとして使用されます。ストレージサイズは 8 バイトです。タイムスタンプ データ型は単なる増分であり、日付や時刻は保持されません。

レコードが挿入されたときに日時を記録するには、日時データ型を使用します。datetime 型の列をテーブルに追加し、getDAte() を設定して datetime を生成することができます。

于 2012-07-05T10:08:11.030 に答える