shape查询问题

cjlong 2004-05-08 10:53:04
Dim c As New ADODB.Connection
c.Provider = "MSDataShape"
c.ConnectionString = "Data Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Inc\jjsp.rsj"
c.Open

Dim rec1 As New ADODB.Recordset
rec1.ActiveConnection = c

sql = "shape {SELECT bjbxx_bz.zzjgh,jbxx_zb.Dw as 单位名称, jbxx_zb.zb as 分配指标 From jbxx_zb } "
sql = sql & " APPEND ({SELECT xqbj,xqwd,dw FROM xqxx} "
sql = sql & " RELATE 'zzjgh' TO 'DW') as ah"
rec1.StayInSync = True

rec1.Open sql ‘程序运行到这里就出现问题了


...全文
75 5 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
cjlong 2004-05-09
rec1.Open sql '加參數 rec1.open strsql,3,1 不要直接用sql

是不可能的,因为错误的信息是说SQL语句错误

现在我怀疑问题是

RELATE 'zzjgh' TO 'DW'

谢谢: online(龙卷风V2.0--再战江湖)
  • 打赏
  • 举报
回复
online 2004-05-08
这是vb自带的nwind数据库中的shape语法
你可以看看你的语法是否有问题

其次
rs.Open sql, conn ‘注意写法,也可以加参数

Private Sub Command1_Click()
Dim sql As String
' 实例化Connection 对象
Set conn = New ADODB.Connection
' 设置连接提供者名称
conn.Provider = "MSDataShape"
' 设置连接字符串
conn.ConnectionString = "Provider=MSDataShape;Data Source=C:\Program Files\Microsoft Visual Studio\VB98\Nwind.mdb; Data Provider=Microsoft.Jet.OLEDB.4.0"
' 打开到数据源的连接
conn.Open
'shape指令
sql = "SHAPE {SELECT * FROM Orders} AS Orders " + _
"APPEND ({SELECT * FROM [Order Details]} AS detail " + _
"RELATE 'OrderID' TO 'OrderID') AS detail"
' 在分级 Recordset对象中当父行位置更改时,对基本子记录的引用是也更改。
rs.StayInSync = True
' 打开游标
rs.Open sql, conn
' 设置MSHFlexGrid控件数据源
Set MSHFlexGrid1.DataSource = rs
End Sub
  • 打赏
  • 举报
回复
daisy8675 2004-05-08
SHAPE {SELECT au_id, au_lname, au_fname FROM authors}
APPEND ({SELECT au_id, title FROM titleauthor TA, titles TS
WHERE TA.title_id = TS.title_id}
AS title_chap RELATE au_id TO au_id)

rec1.Open sql '加參數 rec1.open strsql,3,1 不要直接用sql


再錯,就debug.print strsql看這話是否語法錯誤
  • 打赏
  • 举报
回复
莫情莫钱 2004-05-08
呵呵,帮你up
  • 打赏
  • 举报
回复
cjlong 2004-05-08
怎么就 没有人吗
  • 打赏
  • 举报
回复
相关推荐
发帖
数据库(包含打印,安装,报表)
加入

1199

社区成员

VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
申请成为版主
帖子事件
创建了帖子
2004-05-08 10:53
社区公告
暂无公告