小编Mat*_*zen的帖子

由于潜在的数据丢失,无法转换该值

首先让我澄清一下,这不是一个重复的问题,也不是一个潜在的重复问题。我已经尝试对 StackOverflow 和 DBA Stack Exchange 上已经存在的这个问题的每一个变体实施每一个答案,但没有任何运气。

过去两天我一直在努力解决这个问题(每天大约工作 7 小时),即使在谷歌搜索这个问题之后,似乎没有其他人遇到我的问题的完全相同的变体。

我想做什么?

在 SSIS 中,我试图从 CSV 文件中读取数据,并将其中的行插入到 OLE DB 数据库中。为此,我进行了有史以来最简单的设置,如下所示。

  1. Flat File Source - 读取 CSV 行。
  2. Derived Column - 目前什么都不做(它只是为了试验)。
  3. Data Conversion - 目前什么都不做(它只是为了试验)。
  4. OLE DB Destination - 将行存储在数据库中。

当我尝试运行它时,它停止在我的OLE DB 目标处执行并显示以下错误消息。

输入“OLE DB 目标输入”(51) 上的输入列“数量”(187) 出错。返回的列状态为:“由于潜在的数据丢失,无法转换该值。”。

失败 ( Amount)的列当前的类型是DT_STR。这似乎是我现在最相信的类型。

我尝试了什么?

  • 我已尝试在Flat File Connection失败的列上使用“建议类型”功能。这使得它推荐Single byte signed int数据类型。
    • 停在我的平面文件源
    • 错误数据转换失败。列“金额”的数据转换返回了状态值 2 和状态文本“由于潜在的数据丢失,无法转换该值。”。
  • 我试过使用 Derived Column …

sql-server-2008 sql-server ssis windows-server

17
推荐指数
2
解决办法
12万
查看次数

OPTIMIZE TABLE 对我的数据有什么影响吗?

我的数据库速度变慢了。phpMyAdmin 中的分析器建议我OPTIMIZE TABLE在我的表上运行。

但在这样做之前,我(当然)想知道表中的数据是否会发生任何事情,或者此操作是否完全无害。

使用时我应该考虑利弊OPTIMIZE TABLE吗?索引和主键会保持不变吗?数据库中是否有优化后会变慢的区域?

mysql innodb myisam optimization

9
推荐指数
1
解决办法
2万
查看次数

替换列值?

我最近进入了 SSIS,但无法在网络上的任何地方找到我想要实现的目标。

我试图将一些行作为输入,然后用其他内容替换一个特定列的值,然后返回带有修改过的列的行作为输出。

问题是我不知道要使用哪个任务。

我受到 SQL Server 2008 的限制。

我该如何开始?

sql-server-2008 sql-server etl ssis

4
推荐指数
1
解决办法
3946
查看次数