第一篇文章在这里。我使用<CFSPREADSHEET>
从Excel创建查询,然后尝试将查询结果插入到MySQL表中。这工作正常。我还需要从一列中取值,并将正确的ID号插入表中的ID列。这是我的代码。我得到的结果是在每个表格行中插入相同的ID(6)。这里的帮助肯定会被赞赏。谢谢!ColdFusion10 - 通过插入查询查询cfloop
<cfspreadsheet action="read"
src="#myFile#"
sheet="5"
excludeheaderrow="true"
headerrow="1"
query="newQuery" />
<cfloop query="newQuery">
<!--- set ID variables --->
<cfif newQuery.Branch EQ "Army">
<cfset variables.Branch_ID = 6 />
<cfelseif newQuery.Branch EQ "Marine Corps">
<cfset variables.Branch_ID EQ 9 />
<cfelseif newQuery.Branch EQ "Navy">
<cfset variables.Branch_ID EQ 7 />
<cfelseif newQuery.Branch EQ "Air Force">
<cfset variables.Branch_ID EQ 8 />
<cfelseif newQuery.Branch EQ "Coast Guard">
<cfset variables.Branch_ID EQ 10 />
</cfif>
<cfquery name="importXLS" datasource="memorials_mysql">
INSERT INTO honorees_temp(FirsttName,MName,LastName,Branch,Branch_ID,Unit)
VALUES
('#Trim(FirstName)#',
'#Trim(MName)#',
'#Trim(LastName)#',
'#Trim(Branch)#',
#variables.Branch_ID#,
'#Trim(Unit)#')
</cfquery>
</cfloop>
什么是ID字段? MySQL中的ID是一个字段,应该是auto_increment,但不是? – Busches 2013-04-10 14:25:33
如果分支表中存在'Branch_ID',则还可以使用'INSERT/SELECT'从另一个表中选择ID并在同一语句中插入这些值,并删除if/else块。 – Leigh 2013-04-11 17:19:16