如何使用存储过程从xsl文件中的表中获取数据,该文件不仅包含表?

时间:2015-07-07 15:09:29

标签: sql xslt stored-procedures

我有一个#include <iostream> using namespace std; int main() { while (true){ { cout << "This program counts by twos to any number that is inputted by the user." << endl; cout << "Input an even number to start counting." << endl; int input; cin >> input; if (!cin.fail())//fails if input is not an integer { if (input < 0)//makes sure all numbers are positive { cout << "That is not a positive number. Try again?" << endl; } else if (input % 2 != 0) // makes sure all numbers are even { cout << "That is not an even number. Try again?" << endl; } else{ for (int i = 0; i <= input; i += 2) //uses a for loop to actually do the counting once you know that the number is even. { cout << i << endl; } } } if (cin.fail())//returns this when you input anything other than an integer. { cout << "That is not a digit, try again." << endl; break; } } } return 0; } 文件,我需要从excel数据库表中获取数据。

此文件不仅包含我需要的数据。它还包含徽标,有关文件的一些信息以及总量作为列中某些数字的小计。

我需要一个只读取数据的存储过程,并忽略任何其他额外的东西,包括徽标,总数等。

另外,我只需要插入尚不存在的数据。我插入的表具有复合主键(CardMember,YYYYMM)。

我们将每月为一名卡会员提供一个文件。

这是图像的示例

enter image description here

我阅读了一些帖子,但他们没有解释我的情况。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用OpenRowset?您可以选择要查询的单元格范围。

此前一个帖子可能有所帮助: openrowset for excel: can we skip several rows?

SELECT *
FROM OPENROWSET(
'Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;HDR=YES;Database=c:\YourFilePath',
'SELECT * FROM [sheet1$A5:F]')
WHERE AccountNumber is not null 

您可以在列上使用where子句,该列始终包含要排除总计的数据