5

私は、datetime2 から datetime に 40 個のテーブル列を変換する必要がある、非常に難しい割り当てを割り当てられました。

これは、データベースにある日時形式です.2007-11-12 00:00:00

90,000 を超えるレコードが含まれています

手伝ってください

4

2 に答える 2

7
  • 値が 1753 年 1 月 1 日より前かどうかを確認する必要があります (これらは と互換性がないためdatetime)。例えば

SELECT * FROM MyTable WHERE MyColumn < '1753-01-01'

  • たとえば、これらの値をどうするかを決定する必要があります (ここでは、1753-01-01 未満のすべての値を 1753-01-01 に変更します)。

UPDATE MyTable SET MyColumn = '1753-01-01' WHERE MyColumn < '1753-01-01'

  • 列のタイプを変更する

ALTER TABLE MyTable ALTER COLUMN MyColumn DATETIME

于 2013-08-02T11:54:33.550 に答える
3

それは単なるrediculosです。datetime2はより正確で、より大きな日付範囲を持ち、同じバイト数(8)を占めます。

mssql のコードは次のとおりです。

alter table tablename alter column colname datetime
于 2013-08-02T11:43:51.923 に答える