我正在将一个小型数据库从MySQL传输到MSSQL。MySQL到MSSQL数据类型传输
当前MySQL的声明例子: *(键和NOT NULL有意跳过)
CREATE TABLE my_table(
`id` bigint(20),
`version` int(10),
`user_id` tinyint(3) unsigned, /*less then 100*/
`date_crated` int(11), /*unix time like 1334736752 */
`image_content` blob,
`xml_content` longtext /*xml with non english texts, 5000+ character*/
)
而且我MSSQL的变体:
CREATE TABLE [my_table](
[id] bigint,
[version] int,
[user_id] tinyint,
[date_crated] int,
[image_content] varbinary(MAX),
[xml_content] nvarchar(MAX)
)
我不是信心的最后三个.. 。
是否有任何潜在的数据丢失?
为什么使用整数而不是时间类型来存储日期? – eggyal
@eggyal日期存储为本地化支持的unix时间, 您可以举个'临时类型'的例子,为什么它更好? –
不是*临时*类型; *时间*类型(如与时间有关)。例如'TIMESTAMP',将数据存储为“* unix time *”,但MySQL会意识到该值的含义 - 因此它会自动调整会话['time_zone']的输入/输出(http://dev.mysql .COM/DOC/EN /服务器系统variables.html#sysvar_time_zone)。 – eggyal