| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6260 人关注过本帖
标题:VFP+SQL 连接串写在哪里为标准?
只看楼主 加入收藏
hepingfly
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:15
帖 子:195
专家分:657
注 册:2015-5-21
收藏
得分:2 
楼上的代码,虽然看起来各表单的 grid 是指定了数据源。但是各个grid 使用数据源之前要清空,才不相互混肴。比如: this.grid1.recordsource=null
sele 临时表名
this.grid1.recordsource='临时表名'
试试如何.

星际花草
2016-01-14 23:49
guitarist
Rank: 1
等 级:新手上路
帖 子:45
专家分:6
注 册:2012-2-29
收藏
得分:0 

 第一个“查询1”表单INIT事件代码:
------------------------------------------------------------------------------------------------------------------------------------------
nhandle=SQLSTRINGCONNECT('DRIVER=SQL SERVER;SERVER=*.*.*.*;UID=sa;PWD=sa;database=tz')      &&nhandle 在MAIN.PRG已经设为全局变量
SQLEXEC(nhandle,'select * from chufa','cf')
 SELECT cf
 COUNT TO LSJL
 GO 1
 this.lbjl.Caption=ALLTRIM(STR(lsjl))     &&用来统计临时表记录数,在表单上显示。
this.grid1.recordsource='cf'
 this.grid1.column1.header1.caption='名称'
 .......
this.grid1.column6.header1.caption='日期'  &&共计6列
.......
this.grid1.headerheight=25
 this.grid1.readonly=.t.
 SQLDISCONNECT(handle)
 -------------------------------------------------------------------------------------------------------------------------------------------------------
第二个“查询2”表单查询INIT事件代码:

nhandle=SQLSTRINGCONNECT('DRIVER=SQL SERVER;SERVER=*.*.*.*;UID=sa;PWD=sa;database=tz')      &&nhandle 在MAIN.PRG已经设为全局变量
SQLEXEC(nhandle,'select * from zhuxiao','zx')
SELECT zx
 COUNT TO LSJL

 GO 1
 this.lbjl.Caption=ALLTRIM(STR(lsjl))     &&用来统计临时表记录数,在表单上显示。
this.grid1.recordsource='zx'
 this.grid1.column1.header1.caption='识别号'
 .......
this.grid1.column7.header1.caption='人员'  &&共计 7列
.......
this.grid1.headerheight=25
 this.grid1.readonly=.t.
 SQLDISCONNECT(handle)
 ------------------------------------------------------------------------------------------------------------------------
红色字体那个地方是我上次在这里写的时候着急写错了,源代码是正确的。不是这个地方的原因
2016-01-15 08:48
guitarist
Rank: 1
等 级:新手上路
帖 子:45
专家分:6
注 册:2012-2-29
收藏
得分:0 
回复 11楼 hepingfly
哦,原来有这一说,好的,我试试。谢谢
2016-01-15 08:55
guitarist
Rank: 1
等 级:新手上路
帖 子:45
专家分:6
注 册:2012-2-29
收藏
得分:0 
回复 11楼 hepingfly
按照清空数据源的写法加入了this.grid1.recordsource=null语句,但问题依旧啊。晕
2016-01-15 15:52
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3146
专家分:8408
注 册:2015-3-25
收藏
得分:0 
上传文件,你这样测试不出来,问题在那里的
2016-01-15 17:29
hepingfly
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:15
帖 子:195
专家分:657
注 册:2015-5-21
收藏
得分:0 
楼主采用的是一个个的独立表单?如果是,可以先关闭所有的表,继续用你12楼的代码再试试。再不行,你可以上传一个样板表单,让大家帮你找找原因。

星际花草
2016-01-16 19:38
guitarist
Rank: 1
等 级:新手上路
帖 子:45
专家分:6
注 册:2012-2-29
收藏
得分:0 
怎么上传文件啊,找不到啊!!!
2016-01-18 10:04
liuxingang28
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:山东济南
等 级:贵宾
威 望:47
帖 子:654
专家分:2167
注 册:2014-2-7
收藏
得分:5 
看了一下楼主的代码,正常情况下不应该有大问题。要排查问题,首先要从数据源着手,而楼主却没有在代码中对生成的数据源作任何检测,这可是编程的“大忌”。请参照以下代码对每个程序修改一下,再运行看看数据源是否正常:
nhandle=SQLSTRINGCONNECT('DRIVER=SQL SERVER;SERVER=*.*.*.*;UID=sa;PWD=sa;database=tz')      &&nhandle 在MAIN.PRG已经设为全局变量
if nHandle < 0
    MessageBox("与数据库连接失败!")
    retu
endif

if SQLEXEC(nhandle,'select * from chufa','cf') < 0
    MessageBox("获取数据表 cf 失败!")
    retu
endif

 SELECT cf
 COUNT TO LSJL
 GO 1
 this.lbjl.Caption=ALLTRIM(STR(lsjl))     &&用来统计临时表记录数,在表单上显示。
this.grid1.recordsource='cf'
 this.grid1.column1.header1.caption='名称'
 .......
this.grid1.column6.header1.caption='日期'  &&共计6列
.......
this.grid1.headerheight=25
 this.grid1.readonly=.t.
 SQLDISCONNECT(handle)

[此贴子已经被作者于2016-1-18 10:39编辑过]


泉城飞狐
2016-01-18 10:38
guitarist
Rank: 1
等 级:新手上路
帖 子:45
专家分:6
注 册:2012-2-29
收藏
得分:0 
楼上说的有理,我会把判断语句加入的。现在我想知道怎么上传附件啊,我怎么没找到方法啊。自己都快被自己笨得气死了
2016-01-18 16:38
guitarist
Rank: 1
等 级:新手上路
帖 子:45
专家分:6
注 册:2012-2-29
收藏
得分:0 
两个查询表单.zip (11.5 KB)
原来在这里啊,终于看到了。是我电脑颜色的原因吗?那个淡淡的图标,几乎看不到啊。
2016-01-18 16:40
快速回复:VFP+SQL 连接串写在哪里为标准?
数据加载中...
 
   



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

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