在将SQL Server 2005中的Image类型的数据迁移到Oracle 10g中的BLOB列时,我们需要帮助。
图像数据类型的SQL Server 2005列包含从前端附加到系统的文件的数据。文件可以是xls,jpg,txt等。我们需要这个附件显示在另一个应用程序的前端,这使用ORACLE 10g作为后端。
我们已经使用Informatica尝试过了,但是无法查看文件的内容。但它能够检测文件的类型(xls、jpg、txt等),但内容是空白的。我们不确定在进行Informatica映射时是否需要使用任何特定的选项。
发布于 2011-02-28 13:50:52
首先,BLOB就是这样。一个很长的二进制数据流。没有元信息详细说明该数据所采用的格式。
通常,如果BLOB源自文件,则文件名将记录在单独的列中。在许多情况下,文件名的后缀表示数据的性质。以".xls“结尾的文件可能是Excel电子表格(但您可以很容易地将图像文件重命名为以.xls结尾)。音频和视频文件更复杂,因为虽然后缀可能会让您有所了解,但MPG文件可能会在内部使用不同的编解码器。因此,一台PC可能会乐于播放一些MPG,但不会播放其他MPG,即使其他MPG在另一台机器上播放得相当愉快。
当你把一个文件扔到web浏览器上时,你会发送一个类似于"Content-Type: application/msword“的标题行。这向浏览器建议应该使用什么应用程序来打开文件。浏览器接受该建议,并打开它认为最合适的查看器(可能是PDF的Adobe reader,但用户及其操作系统/环境设置可能会将其指向不同的阅读器,如FoxIt)。
我建议您首先将一些文件传输到操作系统。也许可以使用BFILE将它们写入服务器上的操作系统文件,然后通过FTP传输它们,最好使用原始文件名。然后查看本地/客户端计算机是否可以使用适当的应用程序打开该文件。
如果可以,那么数据是干净的,问题出在应用程序上。您还应该能够使用校验和来确认迁移后的数据与迁移前的数据相同。
https://stackoverflow.com/questions/5138367
复制相似问题