| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 795 人关注过本帖
标题:高手帮忙调试
只看楼主 加入收藏
lzfmlh
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2005-3-30
收藏
 问题点数:0 回复次数:2 
高手帮忙调试
为什么import from 生成的数据表不能用 field()返回字段名,请高手指点
用来导入excel文件的:
w=getfile("xls")      
if !empty(alltrim(w)) then
   open database xuesheng  &&打开数据库"xuesheng"
import from "&w" database xuesheng name stu type xls  
                                         &&导入excel文件别名为stu
local i as number
local l
local a
local t
local n
l=alias()
clear
count to n  &&把stu记录数赋给n
local b
i=1
DO WHILE i<17       &&从一到十七个字段中搜索
use stu
1
b=field(i)          &&返回第i个字段名
  if &b="编号"      &&如果第一个记录的第一个字段为"编号"执行
      for t=1 to n  &&从1到n把stu中的符合if的字段复制到"学生信息表"的"编号"中
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      编号=a
      endfor
  endif
  if &b="姓名"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      姓名=a
      endfor
  endif
  if &b="班级"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      班级=a
      endfor
  endif
  if &b="语文"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      语文=a
      endfor
  endif
  if &b="数学"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      数学=a
      endfor
  endif
  if &b="英语"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      英语=a
      endfor
  endif
  if &b="物理"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      物理=a
      endfor
  endif
  if &b="政治"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      政治=a
      endfor
  endif
  if &b="历史"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      历史=a
      endfor
  endif
  if &b="化学"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      化学=a
      endfor
  endif
  if &b="地理"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      地理=a
      endfor
  endif
  if &b="生物"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      生物=a
      endfor
  endif
  if &b="文综"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      文综=a
      endfor
  endif
  if &b="理综"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      理综=a
      endfor
  endif
  if &b="自然"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      自然=a
      endfor
  endif
  if &b="社会"
      for t=1 to n
      use juststem(w)
      t
      a=&b
      clear
      use 学生信息表
      t
      社会=a
      endfor
  ENDIF
  i=i+1
  enddo
  endif

  
以上编码有一个问题,就是不能返回字段名,即b为空,或者说i值始终是字符型,不能转化为数值型,请高手帮忙调试!
搜索更多相关主题的帖子: 调试 
2005-03-30 17:37
tzhtang
Rank: 1
等 级:新手上路
帖 子:888
专家分:0
注 册:2004-8-30
收藏
得分:0 
  if &b="编号"   应改为:
        if b="编号"


以下的都一样,凡是有&的都要去掉,因为你要的是字段名而不是字段内容

2005-03-31 15:15
lzfmlh
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2005-3-30
收藏
得分:0 
我的目的是把导入的数据表的每一个第一条记录为"编号","",""......的字段中的数据复制到另一个数据表中,当然如果能直接把字段名改为第一条记录名就更好了!谢谢!
2005-03-31 19:27
快速回复:高手帮忙调试
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030070 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved