关于sql 语句count 语句的传递问题

wuyafei168 2005-05-13 03:37:47
我的后台数据库是access,check按纽被选中时,进行评估,评估的方法是拿导线高度来说,我现在是查看导线高度的状态,看它是不是满足要求.当 5500>导线高度>5800 结果为x1,当 5800>=导线高度>6100 结果为x2
最后把这些数相加得 y,只要点“评估结果”就会在text中显示出来。
Dim mycnn As ADODB.Connection
Dim myrs As ADODB.Recordset

----------------------------------------------
Private Sub Form_Load()
Set mycon = New ADODB.Connection '新建一个connection
mycon.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=aaa" '连接数据库
mycon.Open '打开数据库
Set myrs = New ADODB.Recordset '创建一个recordset 实例

End Sub
-----------------------------------------------------------
Private Sub Check1_Click()
Dim strSQL1 As String
Dim strSQL2 As String

'开始导线高度的评估
If Check1.Value = 1 Then
strSQL1 = "select count(*) from 结果 where 5500>=导线高度>5800"
strSQL2 = "select count(*) from 结果 where "5800>=导线高度>6100 "


End Sub

现在怎么把查询的count数符给x1 x2 呢?
...全文
260 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyafei168 2005-05-13
  • 打赏
  • 举报
回复
麻烦那位帮我看一下,我的数据库中明明有两个数据满足条件,但是为什么text中老是显示为0,代码如下:
dim mycon As ADODB.Connection
Dim myrs1 As ADODB.Recordset
Dim myrs2 As ADODB.Recordset
Dim strSQL1 As String
Dim strSQL2 As String
Dim y1 As Integer
----------------------------------
Private Sub Command2_Click()
Text1.Text = y1
End Sub
----------------------------------
Private Sub Form_Load()
Set mycon = New ADODB.Connection '新建一个connection
mycon.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=aaa;Mode=Read" '连接数据库
mycon.Open '打开数据库
End Sub
------------------------------------
Private Sub Check3_Click()
'开始导线高度的评估
If Check3.Value = 1 Then
strSQL1 = "select count(*) as count1 from 结果 where 5500>=导线高度>5800"
strSQL2 = "select count(*) as count2 from 结果 where 5800>=导线高度>6100"
Set myrs1 = mycon.Execute(strSQL1)
Set myrs2 = mycon.Execute(strSQL2)
X1 = myrs1("count1")
X2 = myrs2("count2")
y1 = X1 + X2
Else
y1 = 0
End If

End Sub
wuyafei168 2005-05-13
  • 打赏
  • 举报
回复
谢谢几位前辈了
wuyafei168 2005-05-13
  • 打赏
  • 举报
回复
谢谢几位前辈了
CPLiu 2005-05-13
  • 打赏
  • 举报
回复
这样还不行就没办法了
zyguyue 2005-05-13
  • 打赏
  • 举报
回复
没有初始化记录级变量
viena 2005-05-13
  • 打赏
  • 举报
回复
汗,总是错
dim myrs1 as ADODB.Recordset,myrs2 as ADODB.Recordset
wuyafei168 2005-05-13
  • 打赏
  • 举报
回复
那你说的代码放在哪个位置
dim myrs1 as ADODB.Recordset,myrs1 as ADODB.Recordset
set myrs1 = mycon.execute(strsql1)
set myrs2 = mycon.execute(strsql2)
x1 = myrs1( "count1 ")
x2 = myrs2( "count2 ")
CPLiu 2005-05-13
  • 打赏
  • 举报
回复
myrs1,myrs2没有定义啊
wuyafei168 2005-05-13
  • 打赏
  • 举报
回复
Dim mycnn As ADODB.Connection
Dim myrs As ADODB.Recordset
Dim strSQL1 As String
Dim strSQL2 As String
Dim y1 As Integer

Private Sub Form_Load()
Set mycon = New ADODB.Connection '新建一个connection
mycon.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=aaa" '连接数据库
mycon.Open '打开数据库
Set myrs = New ADODB.Recordset '创建一个recordset 实例

End Sub

Private Sub Check1_Click()


'开始导线高度的评估
If Check1.Value = 1 Then
strSQL1 = "select count(*) as count1 from 结果 where 5500>=导线高度>5800"
strSQL2 = "select count(*) as count2 from 结果 where 5800>=导线高度>6100"
End Sub

Set myrs1 = mycon.Execute(strSQL1)
Set myrs2 = mycon.Execute(strSQL2)
X1 = myrs("count1")
X2 = myrs("count2")
y1 = X1 + X2
Text1.Text = y1
End Sub
怎么text中不显示结果呢?
viena 2005-05-13
  • 打赏
  • 举报
回复
错了,应该是这样

If Check1.Value = 1 Then
strSQL1 = "select count(*) as count1 from 结果 where 5500>=导线高度>5800"
strSQL2 = "select count(*) as count2 from 结果 where "5800>=导线高度>6100 "
End Sub

dim myrs1 as ADODB.Recordset,myrs1 as ADODB.Recordset
set myrs1 = mycon.execute(strsql1)
set myrs2 = mycon.execute(strsql2)
x1 = myrs1("count1")
x2 = myrs2("count2")
viena 2005-05-13
  • 打赏
  • 举报
回复
If Check1.Value = 1 Then
strSQL1 = "select count(*) as count1 from 结果 where 5500>=导线高度>5800"
strSQL2 = "select count(*) as count2 from 结果 where "5800>=导线高度>6100 "
End Sub

set myrs1 = mycon.execute(strsql1)
set myrs2 = mycon.execute(strsql2)
x1 = myrs("count1")
x2 = myrs("count2")
CPLiu 2005-05-13
  • 打赏
  • 举报
回复
set myrs=mycon.execute(strsql1)
x1=myrs.fields(0).value
set myrs=mycon.execute(strsql2)
x2=myrs.fields(0).value
wuyafei168 2005-05-13
  • 打赏
  • 举报
回复
那x2 呢,是不是x2=myrs.fields(1).value
CPLiu 2005-05-13
  • 打赏
  • 举报
回复
set myrs=mycon.execute(strsql1)
x1=myrs.fields(0).value

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧