标题:vb中mshflexgrid为什么增加数据总是出问题
只看楼主
凛冬1
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2020-3-14
结帖率:81.82%
已结贴  问题点数:20 回复次数:2 
vb中mshflexgrid为什么增加数据总是出问题
为什么我文本框中输入0.8,mshflexgrid显示的不是0.8?支管阻力平衡率的字段类型是单精度型,我想改小数位数,在access里每次改完关闭再打开又恢复原样?而且我只有录入数据的时候输入该字段的值才能运行,否则总是报错“insert语句语法错误”

程序代码:
Private Sub Command10_Click()

Call K(conn)   '连接数据库

'输入数据
Dim sql As String
sql = "insert into [设计计算] ( [管段编号],[设计风量(m3/h)],[管长(m)],[比摩阻],[局部阻力系数],[管径(mm)],[实际风速(m/s)],[沿程阻力(Pa)],[局部阻力(Pa)],[总阻力(Pa)],[实际风量(m3/h)],[风量偏差率(%)],[支管阻力平衡率(%)])  values ( '" & Text4.Text & " ',' " & Text3.Text & " ', ' " & Text5.Text & " ', ' " & Text6.Text & " ' , ' " & Text7.Text & " ', ' " & Text10.Text & " ', ' " & Text9.Text & " ', ' " & Text11.Text & " ', ' " & Text12.Text & " ', ' " & Text13.Text & " ',' " & Text14.Text & " ', ' " & Text15.Text & " ', " & Text16.Text & " )"

Set rs = New ADODB.Recordset     '创建数据集对象的连接
rs.Open sql, conn, adOpenKeyset, adLockBatchOptimistic

sql = "select * from [设计计算]"
rs.Open sql, conn, adOpenKeyset, adLockBatchOptimistic


Set MSHFlexGrid1.DataSource = rs

Call title

conn.Close  '关闭连接
Set conn = Nothing   '释放变量

End Sub 
搜索更多相关主题的帖子: mshflexgrid Text conn 数据 sql 
2020-04-03 20:51
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
得分:20 
对于数值型数据,由于数据字段设计时不为空,所以必须赋值,insert时对这些文本框用val函数,则即使没有输入,也会自动给0值,就是“ values ( '" & val(Text4.Text) & " ',' " & val(Text3.Text) & ...”。
关于0.8显示成0.800000001的问题:由于你是直接用mshflexgrid绑定记录集,而记录集是用*查询到的,这只有修改数据库的小数点位数,比如设成货币类型,就保留2位小数。如果sql语句写成“select a,b,c... from [设计计算]”的话,可以使用sql format函数,如:“select format(a,'0.00') as 偏差1,format(b,'0.00') as 偏差2,format(c,'0.00') as 偏差3... from [设计计算]”,这样显示出来的就是两位小数了。

能编个毛线衣吗?
2020-04-03 21:57
凛冬1
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2020-3-14
得分:0 
回复 2楼 wmf2014
谢谢大神!!!
2020-04-04 12:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-500836-1-1.html




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

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