我有可能是一个常见的问题,但我不能想到这样做的好方法。
要求网站读取ftp文件。没问题。该文件是带有第一行标题的CSV,与表格匹配,其中CSV包含标题值的全部或部分子集。剩余的CSV行对应于所述CSV中的标题行。因此,预计将这些记录插入表格不会成为问题。
问题是标题行是神秘的,A45D34,A45D35,A45D36等(数百列)。有一个相应的CSV文件列出了所有列标题以及每当针对表写入查询以显示数据时要使用的相应显示文本。
我想知道是否有一些方法可以利用SQLDATASOURCE并查询两个表,一个包含数据,另一个包含显示文本,并将其绑定到例如Gridview或Web中的其他显示控件表格.aspx页面。
非常感谢任何教程,示例,链接,建议或想法。
更新:这仍然是概念验证,因此设计有一定的灵活性,但不多。
TBL1:
keyID int
CMR_03 decimal(9, 6)
CMR_05 decimal(9, 6)
Z_0E721AD decimal(9, 3)
Z_0E72280 decimal(9, 3)
Z_0E7200C decimal(9, 3)
样本数据;
keyID CMR_03 CMR_05 Z_0E721AD Z_0E72280 Z_0E7200C
1 82.234500 45.456700 1200.000 4.000 1500.000
4 82.654100 44.654000 1150.000 8.000 6500.000
6 83.654000 45.941000 1500.000 7.000 4500.000
7 83.156000 45.984100 1551.000 6.000 3500.000
10 83.321000 45.885210 900.000 2.000 1200.000
TBL2:
keyID int
tbl1ColName nvarchar(50)
displayText nvarchar(50)
示例数据:
1 CMR_03 Latitude
2 CMR_05 Longitude
3 Z_0E721AD Torque
4 Z_0E72280 Calculated Position
5 Z_0E7200C Speed
答案 0 :(得分:1)
我不确定任何教程,但建议;将excel / csv数据拉到数据库中的两个不同表中。因为您说过,有一个相应的CSV文件列出了所有列标题以及要使用的相应显示文本。
您可以在表格中执行join
,然后如下所示,获取数据以及正确的标题文本。然后你可以直接绑定到gridview。
select csv1_table.*,csv2_table.display_header
from csv1_table
inner join csv2_table
on csv1_table.criptic_header = csv2_table.criptic_header