วัน: 29 สิงหาคม 2020

SQL Server: upgrade datetime เป็น datetime2SQL Server: upgrade datetime เป็น datetime2

เป็นเพราะว่า SQL Server ได้มีการ upgrade datetime เป็น datetime2 โดยมีการเก็บข้อมูลที่ละเอียดขึ้น แต่บางครั้งกลับใช้พื้นที่ในการเก็บข้อมูลน้อยลง ดังนั้นถ้าเป็นไปได้จึงควร upgrade เป็น datetime2
alter_table_set_column_type_datetime_to_datetime2.sql

SELECT
 DB_NAME () AS DatabaseName,
 s.name AS SchemaName,
 t.name AS TableName,
 'ALTER TABLE ' + QUOTENAME (DB_NAME ()) + '.' + QUOTENAME (s.name) + '.' + QUOTENAME (t.name) +
 ' ALTER COLUMN ' + QUOTENAME (c.name) + ' datetime2 (2) ;' AS alter_sql
FROM
 sys.columns AS c
JOIN
 sys.tables AS t ON c.object_id = t.object_id
JOIN
 sys.schemas AS s ON t.schema_id = s.schema_id
JOIN
 sys.types AS ty ON c.user_type_id = ty.user_type_id
WHERE
 ty.name = 'datetime';

อ่านเพิ่มเติม