一个困扰我很久的问题,希望大家给我答案 关于不同的表字段相减的问题

hewenwen 2005-12-04 05:16:07
下面的代码是我在客户信息表和配送日志表中,实现客户信息表中的订购票数减去配送日志表中的 回收票数等于客户信息表中的剩余票数,但结果总是不能实现,请问该怎么样实现呢。。。。。
Option Explicit
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Private Sub Form_Load()
Dim str As String
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open "provider=microsoft.jet.oledb.4.0;" _
& "data source=" & App.Path & "\water.mdb;" & "persist security info=false"
str = "select *客户信息.订购票数-配送日志.回收票数 as 剩余票数 from 客户信息,配送日志 where 客户信息.姓名 = 配送日志.客户"
rs.CursorLocation = adUseClient
rs.Open str, conn, adOpenKeyset, adLockPessimistic
End Sub
...全文
155 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
faysky2 2005-12-04
  • 打赏
  • 举报
回复
str="select 客户信息.订购票数-配送日志.回收票数 as 剩余票数 from 客户信息,配送日志 where 客户信息.姓名 = 配送日志.客户"
------------------------------------------

请仔细看看,要确保其中的列要与表对应,比如:客户信息.订购票数, "订购票数" 必须是 "客户信息" 表中的列,其他的也一样,否则,只要有一个不对应,就会提示上面所描述的错误
hewenwen 2005-12-04
  • 打赏
  • 举报
回复
刚才调试一下,出现这样的提示:
至少一个参数未被指定值,关标停在rs.Open str, conn, adOpenKeyset, adLockPessimistic
hewenwen 2005-12-04
  • 打赏
  • 举报
回复
可不可定义两条SQL语句,因为下面的事件中还用到客户信息表中的其他信息,这些代码全是
在客户信息窗体里写的,,
比如:
sql="select * from 客户信息"
str=" "select 客户信息.订购票数-配送日志.回收票数 as 剩余票数 from 客户信息,配送日志 where 客户信息.姓名 = 配送日志.客户"
"
如果这样的话,数据游标(rs)该怎么控制
是不是这样就行咯:
rs.Open str, conn, adOpenKeyset, adLockPessimistic
rs.Open sql, conn, adOpenKeyset, adLockPessimistic
vbman2003 2005-12-04
  • 打赏
  • 举报
回复
可能我理解错了,客户信息表中怎么有“订购票数”?
要看看你的表结构
northwolves 2005-12-04
  • 打赏
  • 举报
回复

str = "select [客户信息].订购票数-[配送日志].回收票数 as 剩余票数 from 客户信息,配送日志 where [客户信息].姓名 = [配送日志].客户"
faysky2 2005-12-04
  • 打赏
  • 举报
回复
str = "select *客户信息.订购票数-配送日志.回收票数 as 剩余票数 from 客户信息,配送日志 where 客户信息.姓名 = 配送日志.客户"
----------------------------------------
语句有错误,*后面应该加个逗号
str = "select *,客户信息.订购票数-配送日志.回收票数 as 剩余票数 from 客户信息,配送日志 where 客户信息.姓名 = 配送日志.客户"
vbman2003 2005-12-04
  • 打赏
  • 举报
回复
select a.*,b*,a.订购票数-b.回收票数 as 剩余票数
from 客户信息 a,配送日志 b
where a.姓名 = b.客户
and b.日期=#2005-12-04#

客户信息表中的客户信息应该是唯一的,配送日志表中客户送配信息不该是唯一的吧?所以加上and b.日期=#2005-12-04# ,如果有这个字段的话这样就应该可以了

1,216

社区成员

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

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