| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 276 人关注过本帖
标题:小白练手,求指导!
只看楼主 加入收藏
heibaochen
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2022-7-23
结帖率:57.14%
收藏
已结贴  问题点数:20 回复次数:12 
小白练手,求指导!
问题描述
1、打开程序,直接在“点名器”页面随机点名登记成绩,正常,切换到“阅读器”中,选择班级查看数据,也正常,但切回“点名器”对任意班级点名时,则报错:“文件正在使用!”,然后强制退出。
2、打开程序,直接在“点名器”页面随机点名登记成绩,正常,切换到“管理器”中,选择任意班级在列表里显示班级数据,不做其他操作,切回“点名器”对任意班级点名时,则报错:“文件正在使用!”,然后强制退出。
3、如果打开程序后不点名,直接到“阅读器”查看班级数据,则只要在“点名器”中对未在“阅读器”中查看过数据的班级能正常点名,但一旦被查看过数据了,则无法再进行点名,报错:“文件正在使用!”,然后强制退出。此情况,在“管理器”中也是一样。

项目文件如下,望各位不吝指导,拜谢!

20230615.rar (907.95 KB)
搜索更多相关主题的帖子: 报错 强制 查看 文件 数据 
2023-12-31 12:20
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9805
专家分:26913
注 册:2012-2-5
收藏
得分:4 
应该是表未关闭造成的

坚守VFP最后的阵地
2023-12-31 12:36
heibaochen
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2022-7-23
收藏
得分:0 
回复 2楼 sdta
我大概知道跟表或工作区有关,但我试过在切换页面时关闭表,好像也解决不了问题。
帮忙看看项目文件吧,黔驴技穷了!
2023-12-31 12:48
nbwww
Rank: 8Rank: 8
等 级:贵宾
威 望:11
帖 子:309
专家分:743
注 册:2021-1-9
收藏
得分:4 
把 USE (fname)   改为  SELECT  * FROM (fname) into CURSOR temp1   
2023-12-31 18:11
heibaochen
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2022-7-23
收藏
得分:0 
回复 4楼 nbwww
非常感谢,问题解决了,在阅读器和管理器中知道用游标数据库,到这里只想着表和工作区的事了,竟然忘了用游标数据库,多谢多谢!

顺便请教几个问题:
1、表单的数据环境中的数据库表随表单的打开关闭则打开关闭,它们在几号工作区呢?
2、表单控件的数据源如果是在程序中指定的游标数据库,这个游标是自动打开吗,能修改它吗,如何关闭它?
3、本例中“管理器”中列表框的数据源是某数据表的某个字段,当删除或修改某记录的字段值时,它对应的字段值在列表框中如何同步更新刷新(删除或修改)。

再次感谢!
2023-12-31 20:44
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1064
专家分:2583
注 册:2015-12-30
收藏
得分:4 
以下是引用heibaochen在2023-12-31 20:44:59的发言:

1、表单的数据环境中的数据库表随表单的打开关闭则打开关闭,它们在几号工作区呢?


只回答第1个问题:系统会在下一个空闲工作区打开一个表(相当于:use temp1 in 0)
需要切换到指定表的工作区时:select temp1    就行了
我从来不知道我的那些表在几号工作区
2023-12-31 21:17
heibaochen
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2022-7-23
收藏
得分:0 
回复 6楼 laowan001
版主您好,当提示“文件正在使用”时,有什么办法能知道它在哪里被打开使用了?
2024-01-01 11:32
heibaochen
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2022-7-23
收藏
得分:0 
回复 4楼 nbwww
您好,现在发现一个问题,但凡涉及到写数据表时,用 use (fname) 就会报“文件正在使用”,比如:点名里写入成绩时,管理器里需要添加班级或删除学生记录时。如果有时间,麻烦您再给看一下,多谢多谢。
2024-01-01 11:42
nbwww
Rank: 8Rank: 8
等 级:贵宾
威 望:11
帖 子:309
专家分:743
注 册:2021-1-9
收藏
得分:0 
以下是引用heibaochen在2024-1-1 11:42:53的发言:

您好,现在发现一个问题,但凡涉及到写数据表时,用 use (fname) 就会报“文件正在使用”,比如:点名里写入成绩时,管理器里需要添加班级或删除学生记录时。如果有时间,麻烦您再给看一下,多谢多谢。


那是不是要查上次打开有没有关闭,或者SELECE 表名
2024-01-01 19:42
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1064
专家分:2583
注 册:2015-12-30
收藏
得分:0 
以下是引用heibaochen在2024-1-1 11:32:50的发言:

版主您好,当提示“文件正在使用”时,有什么办法能知道它在哪里被打开使用了?


假设打开的文件名是:temp
messagebox(SELECT('temp'))    && SELECT('temp')返回工作区的号,比如 2

其实:select temp 就可以直接转到这个表的工作区了



[此贴子已经被作者于2024-1-1 20:09编辑过]

2024-01-01 20:08
快速回复:小白练手,求指导!
数据加载中...
 
   



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

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