【问题标题】:Identify highest possible datatype识别最高可能的数据类型
【发布时间】:2019-01-24 17:02:09
【问题描述】:

我已将数据从 CSV 导入 SQL-Server 数据库表。现在一切都是字符串,我正在寻找一种方法来为所有列获取最具体的数据类型,并使用数据和这个数据类型创建一个表。我找到了识别现有数据类型的方法,但这不是我想要的。

例如,假设有一个1212 可以是字符串或整数。 Int 更具体。

【问题讨论】:

  • 我的意思是最具体的数据类型。假设有一个 12。一个 12 可以是字符串或整数。 Int 更具体。这就是我所说的最高可能数据类型。
  • 您打算如何导入 CSV 文件?
  • 我通过批量插入导入。
  • 我能想到的是将bulk insert 放入一个全字符串暂存表中,然后您需要解析每一列和每一行。查看所有行的值是否都是数字并决定使用什么数据类型。这不会是一件容易的事。您需要考虑整数、小数、字符串或可能是日期/日期时间
  • 不是问题。您需要定义规则并决定为每个条件使用什么数据类型。例如这种情况,您需要选择字符串或整数

标签: sql-server types


【解决方案1】:

如果导入是使用 SSIS 完成的,它具有这样的内置功能:

Have SSIS detect the column sizes of a csv file:

然后,点击建议类型:

【讨论】:

    猜你喜欢
    • 2016-10-18
    • 1970-01-01
    • 1970-01-01
    • 2020-05-25
    • 2014-04-07
    • 1970-01-01
    • 1970-01-01
    • 2020-09-06
    • 2012-06-30
    相关资源
    最近更新 更多