| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3571 人关注过本帖
标题:求助,表单上表不存在问题!!
只看楼主 加入收藏
wangjiayu45
Rank: 1
等 级:新手上路
帖 子:189
专家分:0
注 册:2010-4-23
结帖率:83.93%
收藏
已结贴  问题点数:20 回复次数:17 
求助,表单上表不存在问题!!
表单上的数据源是一个远程视图,在编写情况下,运行没有问题。可在编译后,出现表不存在。不知道如何处理?
图片附件: 游客没有浏览图片的权限,请 登录注册


我的主程序:
SET TALK OFF
SET ESCAP OFF
CLOSE ALL   
CLEAR MENUS  
SET SYSMENU SAVE
SET SYSMENU OFF
SET SYSMENU TO
zoom window screen max
release window
SET AUTOSAVE ON
SET CARRY OFF
SET CONFIRM OFF
SET CENTURY OFF
SET DATE ANSI
SET DELETE ON
SET NULL ON
SET NULLDISPLAY TO ""
***

* 设置程序主目录
Public gcMainPath
gcMainPath = Sys(5)+Sys(2003)+"\"
Set Default To &gcMainPath


* 数据目录(本地数据库和表)
Public  ataPath
ataPath =gcMainPath+"Data\"

* 程序目录
Public gcPrgsPath
gcPrgsPath =gcMainPath+"Progs\"

* 图片目录
Public gcPicsPath
gcPicsPath=gcMainPath + "pic\"

* 表单目录
Public gcFormsPath
gcFormsPath = gcMainPath+"forms\"

* 菜单目录
Public gcMenusPath
gcMenusPath = gcMainPath+"menus\"

* 标签目录
Public gcLabelsPath
gcLabelsPath = gcMainPath+"libs\"

* 报表目录
Public gcReportsPath
gcReportsPath =gcMainPath+"Reports\"

*初始化键盘
CapsLock(.F.)
IMEStatus(0)
Insmode(.T.)
Numlock(.T.)
&&禁止主表单重复打开
DECLARE Integer FindWindow IN USER32.DLL String lpClassName,String lpWindowName
LPWINDOWNAME="卫生室管理小助手"
IF .NOT. FindWindow(0,lpWindowName)==0 &&寻找窗口标题
   =MESSAGEBOX("程序已经运行了,请点击电脑最下面任务栏的卫生室小助手图标!",16,"警告信息")
   QUIT
ENDIF
_SCREEN.CAPTION=LPWINDOWNAME


&&在表单需要读取数据的时候才连接,读取数据完成后,关闭连接
*PUBLIC nhandle
*nhandle=sqlstringconnect("driver={MySQL ODBC 8.0 Unicode Driver};server=127.0.0.1;uid=root;pwd=123456;database=wssgl;CHARSET=gb2312")
*IF nhandle>0

 *  sqlexec(nhandle,'select * from byhmc','byhmc') &&读取数据到sql_table,这个sql_table是不可以修改的
  * endif
DO FORM d:\wssxzs\forms\kl.scx

*恢复环境
SET SYSMENU TO DEFAULT
With _Screen
    .WindowState=2      &&最大化
    .BackColor=Rgb(255,255,255)
    .Caption="卫生室管理小助手"
    .Icon=''
ENDWITH

read even
retu
clear events

出现问题的那个代码
LPARAMETERS nKeyCode, nShiftAltCtrl

USE styhmc &&程序开始。就这个有问题,styhmc是一个视图
locate for styhmc.grdm==ALLTRIM(thisform.edit1.Value)
if found()
 thisform.label1.caption=ALLTRIM(styhmc.dwmc)+styhmc.yhxm
 * DO FORM d:\wssxzs\forms\启动界面.scx
 *   THISFORM.RELEASE
 ELSE
 messagebox("对不起,用户代码或密码错误",48,"友好提示!")

continue
ENDIF




[此贴子已经被作者于2019-7-21 10:36编辑过]

搜索更多相关主题的帖子: 表单 数据 SET 目录 Public 
2019-07-21 09:06
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9799
专家分:26886
注 册:2012-2-5
收藏
得分:4 
USE styhmc ADMIN

加 ADMIN 参数试试,再研究一下 USE 命令的用法

坚守VFP最后的阵地
2019-07-21 09:37
wangjiayu45
Rank: 1
等 级:新手上路
帖 子:189
专家分:0
注 册:2010-4-23
收藏
得分:0 
回复 2楼 sdta
请老师赐教,我怎么弄?
加了ADMIN也没有用,需要视图独占!书上说可以把视图当作表来用。我也找不到视图路径??
2019-07-21 10:33
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:763
专家分:2503
注 册:2011-5-8
收藏
得分:4 
在主程序中加入
public pdbc
pdbc=数据库路径+数据库名
OPEN DATABASE &pdbc

打开视图时
USE &pdbc!styhmc
引用视图时用&pdbc!视图名( SQL select  等语句中)

dBase有人接盘了。
2019-07-21 13:30
wangjiayu45
Rank: 1
等 级:新手上路
帖 子:189
专家分:0
注 册:2010-4-23
收藏
得分:0 
回复 4楼 xuminxz
让您见笑了,我第一次用MYSQL,也是第一次做C/S
我的数据库是远程服务器上的。
我不会找数据库路径+数据库名。请老师告诉我怎么弄?谢谢
PUBLIC nhandle   &&连接远程数据库
nhandle=sqlstringconnect("driver={MySQL ODBC 8.0 Unicode Driver};server=149.224.177.117;uid=root;pwd=XXXX;database=wssry;CHARSET=gb2312")
sqlexec(nhandle,'select * from byhmc','byhmc') &&读取数据表

[此贴子已经被作者于2019-7-22 08:59编辑过]

2019-07-22 08:40
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:763
专家分:2503
注 册:2011-5-8
收藏
得分:0 
1、建立一个本地数据库 例如 Dtbs,可放在Data下
在主文件中加入
 public pdbc
pdbc=ataPath+'dtbs.dbc'
OPEN DATABASE &pdbc
2、在数据库中建立一个连接
3、建立远程视图。

dBase有人接盘了。
2019-07-22 09:44
wangjiayu45
Rank: 1
等 级:新手上路
帖 子:189
专家分:0
注 册:2010-4-23
收藏
得分:0 
回复 6楼 xuminxz
按这个步骤已经好了。
就是在表单上 数据环境加入视图(styhmc)
运行表时,提示找不到表(styhmc视图)
图片附件: 游客没有浏览图片的权限,请 登录注册


如果有可能,请老师加我QQ156177445,帮我看看!

[此贴子已经被作者于2019-7-22 10:43编辑过]

2019-07-22 10:34
wcx_cc
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:52
帖 子:352
专家分:1152
注 册:2015-10-2
收藏
得分:4 
nhandle=sqlstringconnect(),这种连接方式,通常是做不出视图来的。不知道你是怎么做出来的。6楼说的对,要先做一个本地数据库,在这个数据库里才能做出本地或远程视图。要用这个数据库做远程连接,用的连接方式是 nhd=sqlconnect('连接名',.T.), 这是共享连接。会使用gendbc 吗? 他会瞬间形成一个远程视图的代码。以后不再手工制图。在表单里,要有打开数据库,和打开此库内那个远程视图的语句:open data 数据库名 ,use 远程视图名。可以试试。
2019-07-22 12:00
wangjiayu45
Rank: 1
等 级:新手上路
帖 子:189
专家分:0
注 册:2010-4-23
收藏
得分:0 
回复 8楼 wcx_cc
图片附件: 游客没有浏览图片的权限,请 登录注册

 @wcx_cc老师、xuminxz老师、sdta
1:就是在本地建好数据库(gl)、连接(连接1)、远程视图(styhmc)。
2:建了一个表单,在数据环境中,用远程视图(styhmc)做数据。



2019-07-22 14:09
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:763
专家分:2503
注 册:2011-5-8
收藏
得分:0 
确定打开数据库了吗?
中间有没有执行 Close All之类的命令?
另外,不建议用数据环境管理表的打开与关闭。

[此贴子已经被作者于2019-7-22 15:07编辑过]


dBase有人接盘了。
2019-07-22 15:04
快速回复:求助,表单上表不存在问题!!
数据加载中...
 
   



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

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