中核821厂电话:Foxpro中Accept的应用

来源:百度文库 编辑:高校问答 时间:2024/04/29 00:14:51
假设目录下有许多结构相同的数据库
我做了一个比较其中两个表数据程序
设想在开始提示用户输入要比较的两个表名
用Accept语句如下
Accept "请输入表1名称" to name1
Accept "请输入表2名称" to name2
可是后来在执行
select 1
use name1
时提示不存在数据库name1
请问该如何实现这样的效果?
就是想实现上面的类似功能
用户输入数据库名称后,系统自动打开他们
然后再进行下面的其他操作

具体的来说
就是系统目录下有许多相同结构的数据库
比如说结构均为:品名,单位,规格,来源,产地
当用户输入要比较的两个数据库名称后,
系统自动进行分析,然后给出
两个数据库中品名相同的数据记录列表
或者按其他项目相同的数据记录列表
谢谢大家了,在线等!

你的命令写错了,ACCEPT的格式如下:
ACCEPT[提示信息]TO<内存变量>
命令功能:把用户输入的字符串保存到指定的内存变量中。

Accept "请输入表1名称" to name1
这句的功能是:把输入的字符串保存到name1 这个内存变量中。

use name1 这句明显错误,
use的格式是:use<表名>
use只能打开表,而name1只是一个内存变量,语法错误。

你想编什么程序?说清楚一下,我看我可不可以编下试试。

在VFP6.0及以后版本中,请这样编写代码:
Local cName
m.cName = GetFile('dbf')
If File(m.cName)) Then
Select 0
Use (m.cName) Again
EndIf
如果这个表没有被打开,那么,这段代码将打开此表;
如果这个表已经打开但不是使用专用模式打开并且你也不是使用专用模式,那么,它同样打开这个表;
如果这个文件不存在或者用户选择了取消,那么它什么也不做;
如果这个表已经使用专用模式打开了,那么,它还是什么也不做。

对啊,内荐变量是不能打开的
USE name1 当然你打开的是表,不是数据库
open database 这样可以打开数据库
中间你可以把参数传递给其他的变量
如:
accept "请输入一个名字" to name1
table1=name1
open database
o

大家快来回答问题啊
http://zhidao.baidu.com/question/5304144.html

http://zhidao.baidu.com/question/5304144.html