【问题标题】:Conversion chart of SSIS data types to SQL Server data types: Should I choose numeric or decimal?SSIS 数据类型到 SQL Server 数据类型的转换图:我应该选择数字还是小数?
【发布时间】:2021-06-06 23:23:19
【问题描述】:

我是 SSIS 和 SQL 初学者,我正在尝试了解我应该选择哪种数据类型。 SQL Server 数据类型为 [decimal](4, 3),有两种转换选项,decimal 和 numeric。在这种情况下,哪一种更合适?

【问题讨论】:

  • 使用数字并设置精度和比例

标签: sql sql-server tsql types ssis


【解决方案1】:

参考SSIS official documentation,您应该使用DT_NUMERIC 数据类型。

请注意,在 SSIS 中有一个类似的数据类型可用,称为 DT_DECIMAL。 DT_NUMERIC 支持的范围比DT_DECIMAL 更广。

根据官方文档,DT_DECIMAL定义为:

具有固定精度和固定比例的精确数值。该数据类型是一个带单独符号的 12 字节无符号整数,范围为 0 到 28,最大精度为 29。

而DT_NUMERIC 定义为:

具有固定精度和比例的精确数值。此数据类型是一个 16 字节的无符号整数,带有单独的符号,范围为 0 - 38,最大精度为 38。

【讨论】:

  • 需要强调的是,SSIS 类型是 OLEDB 类型,而不是 SQL Server 类型。它们类似于编程语言类型,所以DT_DECIMAL 类似于.NET 的decimal 类型
  • @SandraGuilepZouaouiZandeh 用于哪个数据库?在 SQL Server 中只有一种类型。每个数据库都有不同的类型系统并以不同的方式处理类型。至于 SQL 92 - 不仅是 20 年前,而且除了最基本的 ANSI SQL 合规性之外,没有任何数据库提供任何东西。没有。由供应商之间的谈判创建的标准愿望,主要试图规范新功能和不同供应商的实现事后
  • @SandraGuilepZouaouiZandeh at the most basic 也不是修辞格。该标准具有合规级别,因此供应商仅出于商业原因遵守最低级别 - 他们希望能够相互吸引客户。 MySQL 以打破最基本的兼容级别而臭名昭著
  • @PanagiotisKanavos 现在我感到困惑
猜你喜欢
  • 1970-01-01
  • 2010-10-09
  • 2012-06-26
  • 2019-06-03
  • 1970-01-01
  • 2011-11-29
  • 1970-01-01
相关资源
最近更新 更多