| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1048 人关注过本帖
标题:用此命令CREATE dbf xktjk (bmd c(5),dj c(1),km c(2),rs n(4))后提示xktjk ...
取消只看楼主 加入收藏
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
结帖率:79.38%
收藏
已结贴  问题点数:20 回复次数:7 
用此命令CREATE dbf xktjk (bmd c(5),dj c(1),km c(2),rs n(4))后提示xktjk.dbf找不到?
用此命令CREATE dbf xktjk (bmd c(5),dj c(1),km c(2),rs n(4))建立xktjk.dbf 后,要追加记录时但提示xktjk.dbf找不到?

[此贴子已经被作者于2015-12-1 08:57编辑过]

搜索更多相关主题的帖子: 记录 
2015-12-01 08:56
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
附上代码,请行家指教。为什么会提示xktjk.dbf不存在

SET TALK OFF  &&关闭命令显示
SET SAFE OFF
y=MESSAGEBOX("必须准备空库:xkcjk.dbf!如果没有,请退出重新加入!",4+64,"提醒:是否符合要求!")
IF y=6
sjk=GETFILE('DBF','选择数据库','',0,'查找下发的学业考成绩库')
USE xkcjk
ZAP
APPEND FROM &sjk.
CREATE dbf xktjk (bmd c(5),dj c(1),km c(2),rs n(4))   &&建立表

lcs="yw,sx,yy,zz,ls,dl,wl,hx,sw,js"
nrow=Alines(cstr,Strtran(lcs,",",Chr(13)+Chr(10)))
for i=1 to nrow
select bmd,&cstr(i) as dj,count(*) as rs,'&cstr(i)' as km from xkcjk where &cstr(i)<>' 'group by bmd,&cstr(i) into table &cstr(i)

SELECT xktjk &&打开并追加记录
APPEND FROM &cstr(i)
endfor
2015-12-01 09:48
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
以下是引用tlliqi在2015-12-1 09:52:02的发言:

xktjk表没打开
*******
sele 1
use xktjk
SELECT xktjk &&打开并追加记录
还是照旧提示
2015-12-01 09:59
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
以下是引用吹水佬在2015-12-1 10:25:19的发言:

在CREATE dbf xktjk ......跟着就
SELECT xktjk
APPEND FROM ......
这样试试应该就知道问题所在
追加数据是在循环中,否则每一次循环要建立一个库,再追加数据,肯定是不行的。
我预先放入一只空的xktjk,就不会出现提示,难道在代码中空建一只空库就出现找不到xktjk.dbf?
下面是我预先建立并放入一只空的xktjk的代码:它能顺利进行

SET TALK OFF  &&关闭命令显示
SET SAFE OFF



y=MESSAGEBOX("必须准备二只空库:xktjk.dbf与xkcjk.dbf!如果没有,请退出重新加入!",4+64,"提醒:是否符合要求!")
IF y=6
sjk=GETFILE('DBF','选择数据库','',0,'查找省发的学考成绩库')

USE xkcjk
ZAP
APPEND FROM &sjk.

*CREATE dbf xktjk  (bmd c(5),dj c(1),km c(2),rs n(4))&&我想在代码中建立
USE xktjk &&&这是预先建好的空库
zap

lcs="yw,sx,yy,zz,ls,dl,wl,hx,sw,js"
nrow=Alines(cstr,Strtran(lcs,",",Chr(13)+Chr(10)))
for i=1 to nrow



select bmd,&cstr(i) as dj,count(*) as rs,'&cstr(i)' as km from xkcjk where &cstr(i)<>' 'group by bmd,&cstr(i) into table &cstr(i)

SELECT xktjk
APPEND FROM &cstr(i)
endfor

[此贴子已经被作者于2015-12-1 10:38编辑过]

2015-12-01 10:34
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
以下是引用wp231957在2015-12-1 10:37:10的发言:

xkcjk
xktjk
你的代码中出现了2个形似的表名称  请你自己检查一下  用的地方对不对
有二只,一只是xkcjk(这只是预先建好的),另一只是xktjk想临时建立,就是临时建立的找不到?
2015-12-01 10:41
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
以下是引用吹水佬在2015-12-1 10:49:26的发言:

这样好看点
APPEND FROM DBF(cstr(i))
接受你的建议。现在成功了,也不知何故?改为建立临时库也成功了。
CLEAR
SET TALK OFF  &&关闭命令显示
SET SAFE OFF
y=MESSAGEBOX("必须准备一只空库:xkcjk.dbf!如果没有,请退出重新加入!",4+64,"提醒:是否符合要求!")
IF y=6
sjk=GETFILE('DBF','选择数据库','',0,'查找省发的学考成绩库')

USE xkcjk
ZAP
APPEND FROM &sjk.

CREATE cursor xktjk  (bmd c(5),dj c(1),rs n(4),km c(2))&&建立临时库,省得代码结束后还要删除xkjtk.dbf
*CREATE dbf xktjk  (bmd c(5),dj c(1),rs n(4),km c(2))
*USE xktjk

lcs="yw,sx,yy,zz,ls,dl,wl,hx,sw,js"
nrow=Alines(cstr,Strtran(lcs,",",Chr(13)+Chr(10)))
for i=1 to nrow

select bmd,&cstr(i) as dj,count(*) as rs,'&cstr(i)' as km from xkcjk where &cstr(i)<>' 'group by bmd,&cstr(i) into table &cstr(i)

SELECT xktjk

APPEND FROM &cstr(i)
*APPEND FROM DBF(cstr(i)) &&另一种形式
endfor

SELECT bmd,KM,MAX(IIF(DJ=='A',RS,0000)) AS A,MAX(IIF(DJ=='B',RS,000)) AS B,MAX(IIF(DJ=='C',RS,0000)) AS C,MAX(IIF(DJ=='D',RS,000)) AS D,MAX(IIF(DJ=='E',RS,000)) AS E,MAX(IIF(DJ=='A',RS,0000))+MAX(IIF(DJ=='B',RS,000))+MAX(IIF(DJ=='C',RS,0000))+MAX(IIF(DJ=='D',RS,000))+MAX(IIF(DJ=='E',RS,000))AS TOT FROM  xktjk GROUP BY BMD,KM ORDER BY km,bmd INTO TABLE XKCJTJK
COPY TO XKCJTJK TYPE XL5

WAIT "学考成绩统计库二种格式(XKCJTJK.DBF与xkcjtjk.xls)生成完毕!"  WINDOW TIMEOUT 5  AT SROWS()/2,(SCOLS()/4)
ELSE
RETURN
ENDIF
CLEAR ALL
DELETE FILE  ls1.*
DELETE FILE ??.dbf
*DELETE FILE xktjk.dbf

SET TALK On
SET SAFE On
2015-12-01 11:15
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
以下是引用吹水佬在2015-12-1 11:29:22的发言:

? &cstr(i)
? DBF(cstr(i))
比较一下这两句结果,再看看APPEND FROM命令的帮助说明就清楚。
?dbf(cstr(i)) 能产生带有路径的的文件名
?&cstr(i)要改为--->?'&cstr(i)'才出现不带路径的文件名
2015-12-01 13:37
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
以下是引用wcx_cc在2015-12-1 18:53:10的发言:

创建的 cursor xktjk 被其后的循环过程,从内存中挤掉了? dbf 是文件型的不会有这种事。
不清楚是什么意思?
2015-12-03 08:58
快速回复:用此命令CREATE dbf xktjk (bmd c(5),dj c(1),km c(2),rs n(4))后提示 ...
数据加载中...
 
   



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

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