SQL 数据库 2005 中 Excel 目标的 SSIS 数据类型不正确

发布于 2024-09-12 19:49:05 字数 228 浏览 9 评论 0原文

我希望有人能帮助我,我已经探索谷歌死了,但我似乎找不到答案。我是使用 SSIS 的新手,所以我不知道这是否可能...我正在将数据从 SQL Server 数据库导出到 Excel 文件,该文件运行良好,但它将所有数字导出为字符串。然后我必须手动将其转换为数字。数据源肯定是数字,但 SSIS 将目标单元格识别为 UNICODE STRING。我尝试过更改 Excel 模板中单元格的格式,并尝试使用导入导出向导,但无济于事。我有什么遗漏的吗?

I'm hoping someone can help me, I've explored google to death and I just can't seem to find the answer. I'm new to using SSIS, so I don't know if this is possible...I am exporting data from SQL server database to an Excel file, which works well but it exports all numeric as string. I then have to go in a manually convert it to numbers. The source of the data is definitely numeric but SSIS recognises the destination cells as UNICODE STRING. I've tried changing the format of the cells in the excel template and tried to use the import export wizard but to of no avail. Is there something I am missing?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

白衬杉格子梦 2024-09-19 19:49:05

我使用 Excute SQl 任务来创建 Excel 文件并定义列和数据类型。使用 EXCEL 连接类型,然后使用创建表语句在 Excel 文件中创建选项卡。请参阅下面的示例:

CREATE TABLE `MyExcelFile` (
     `FIRST_NAME` NVARCHAR(100),
    `MIDDLE_NAME` NVARCHAR(50),
    `LAST_NAME` NVARCHAR(255),
    `BUSINESS_NAME` NVARCHAR(255),
    `ADDR1` NVARCHAR(200),
    `ADDR2` NVARCHAR(200),
    `ADDR3` NVARCHAR(200),
    `CITY` NVARCHAR(100),
    `STATE` NVARCHAR(50),
    `COUNTRY_CD` NVARCHAR(2),
    `ZIP` NVARCHAR(50) 
     `TOTAL_COUNT` INT,
    `TOTAL_AMOUNT` NUMERIC (10,2),
) 

I use an Excute SQl task to crete the excel file and define the columns and datatypes. Use a connection type of EXCEL and then a create table statment to create the tab in the excel file. See example below:

CREATE TABLE `MyExcelFile` (
     `FIRST_NAME` NVARCHAR(100),
    `MIDDLE_NAME` NVARCHAR(50),
    `LAST_NAME` NVARCHAR(255),
    `BUSINESS_NAME` NVARCHAR(255),
    `ADDR1` NVARCHAR(200),
    `ADDR2` NVARCHAR(200),
    `ADDR3` NVARCHAR(200),
    `CITY` NVARCHAR(100),
    `STATE` NVARCHAR(50),
    `COUNTRY_CD` NVARCHAR(2),
    `ZIP` NVARCHAR(50) 
     `TOTAL_COUNT` INT,
    `TOTAL_AMOUNT` NUMERIC (10,2),
) 
私野 2024-09-19 19:49:05

诀窍是让 SSIS 知道您希望 Excel 数据是数字。试试这个:

  1. 格式化工作表中的单元格并保存。
  2. 在“映射”选项卡中编辑 SSIS Excel 目标
  3. ,将鼠标光标悬停在应该是数字的目标列上。查看工具提示,看看它是否显示数字数据类型。

The trick is to get SSIS to see that you want the Excel data to be numeric. Try this:

  1. format the cells in the sheet and save.
  2. edit the SSIS Excel destination
  3. in the Mappings tab hover your mouse cursor over the destination column that is supposed to be numeric. Look at the tool tip to see if it's showing a numeric data type.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文