小弟有两个表如下
cs_info:
cname cbir cwork cdan ctel
cs_ding
ctel cctel cliwu检索这两个表中CTEL相同的字段求SQL语句怎么应用在MSFLEXGRID语句中~~Do While Not rct.EOF
With MSF2
.AddItem ""
.Row = 1
.Col = 0: .Text = rct!cname
.Col = 1: .Text = rct!cbir
.Col = 2: .Text = rct!cwork
.Col = 3: .Text = rct!cdan
.Col = 4: .Text = rct!b.cdtime
.Col = 5: .Text = rct!cctel
.Col = 6: .Text = rct!cliwu
rct.MoveNext
End With
.text 中 应该怎么样写~~
请给位高手帮办小弟~~~
cs_info:
cname cbir cwork cdan ctel
cs_ding
ctel cctel cliwu检索这两个表中CTEL相同的字段求SQL语句怎么应用在MSFLEXGRID语句中~~Do While Not rct.EOF
With MSF2
.AddItem ""
.Row = 1
.Col = 0: .Text = rct!cname
.Col = 1: .Text = rct!cbir
.Col = 2: .Text = rct!cwork
.Col = 3: .Text = rct!cdan
.Col = 4: .Text = rct!b.cdtime
.Col = 5: .Text = rct!cctel
.Col = 6: .Text = rct!cliwu
rct.MoveNext
End With
.text 中 应该怎么样写~~
请给位高手帮办小弟~~~
strsql = "select a.cname,a.cbir,a.cwork,a.cdan,b.cdtime,b.cctel,b.cliwu from cs_info a left join cs_ding b on a.ctel=b.ctel":
If runsql(strsql) = True Then
rct.MoveFirst
End If
Do While Not rct.EOF
With MSF2
.AddItem ""
.Row = 1
.Col = 0: .Text = rct!cname
.Col = 1: .Text = rct!cbir
.Col = 2: .Text = rct!cwork
.Col = 3: .Text = rct!cdan
.Col = 4: .Text = rct!cdtime
.Col = 5: .Text = rct!cctel
.Col = 6: .Text = rct!cliwu
rct.MoveNext
End With
Loop
这样写不对~~~~~~~~~~~~
下面那业写也不对 (加上了B.)
strsql = "select a.cname,a.cbir,a.cwork,a.cdan,b.cdtime,b.cctel,b.cliwu from cs_info a left join cs_ding b on a.ctel=b.ctel":
If runsql(strsql) = True Then
rct.MoveFirst
End If
Do While Not rct.EOF
With MSF2
.AddItem ""
.Row = 1
.Col = 0: .Text = rct!cname
.Col = 1: .Text = rct!cbir
.Col = 2: .Text = rct!cwork
.Col = 3: .Text = rct!cdan
'.Col = 4: .Text = rct!b.cdtime
.Col = 5: .Text = rct!b.cctel
.Col = 6: .Text = rct!cliwu
rct.MoveNext
End With
Loop
到底怎么样才队???
dim c as adodb.recordset
db.connectstring=connectstr '数据库连接字符串
db.open '打开数据库
sqlstr="select ...... from .... where ..=.."
'select 可以直接从多个表内选取满足条件的字段
c.open sqlsre,db,1,3 '按上面的SQL语句得到一个记录集
'然后就可以直接对c进行操作了.一条一条记录读出来,写到grid中去.
因为已经将需要的字段和记录都存放在了一个记录集中了,GRID的赋值也很简单,只要用2次循环就解决了:dim x as long
dim y as long
c.movelast
c.movefirst '只是为了得到记录集的记录数量而已
grid.rows=c.fields.count+1
grid.cols=c.recordcount
grid.formatstring="|^字段名1|^字段名2..." '这个自己写吧
for y=0 to c.recordcount-1
for x=0 to c.fields.count-1
grid.textmatrix(y,x)=c.fields(x).value & ""
next
c.movenext
next基本上就是这样的,次段程序其实是独立于数据库结构的,或许会有点小错误,是由于grid的固定行和固定列的设置不同引起的,很容易解决.楼主自己调试一下吧
for x=0 to c.fields.count-1 你的这两句话能结实以下什么意思~吗???~~
晕,这么简单的问题
connectSQL
strsql = "select a.cname,a.cbir,a.cwork,a.cdan,b.cdtime,b.cctel,b.cliwu from cs_info a left join cs_ding b on a.ctel=b.ctel":
If runsql(strsql) = True Then
rct.MoveFirst
End If
set MSF2.recordset=rct
.AddItem ""
.Row = 1
.Col = 0: .Text = rct!cname
.Col = 1: .Text = rct!cbir
.Col = 2: .Text = rct!cwork
.Col = 3: .Text = rct!cdan
.Col = 4: .Text = rct!cdtime
.Col = 5: .Text = rct!cctel
.Col = 6: .Text = rct!cliwu
rct.MoveNext
End With
Loop
这样写不对~~~~~~~~~~~~
下面那业写也不对 (加上了B.)
strsql = "select a.cname,a.cbir,a.cwork,a.cdan,b.cdtime,b.cctel,b.cliwu from cs_info a left join cs_ding b on a.ctel=b.ctel":
If runsql(strsql) = True Then
rct.MoveFirst
End If
Do While Not rct.EOF
With MSF2
.AddItem ""
.Row = 1
.Col = 0: .Text = rct!cname
.Col = 1: .Text = rct!cbir
.Col = 2: .Text = rct!cwork
.Col = 3: .Text = rct!cdan
'.Col = 4: .Text = rct!b.cdtime
.Col = 5: .Text = rct!b.cctel
.Col = 6: .Text = rct!cliwu
rct.MoveNext
End With
Loop
connectSQL
strsql = "select a.cname,a.cbir,a.cwork,a.cdan,b.cdtime,b.cctel,b.cliwu from cs_info a left join cs_ding b on a.ctel=b.ctel":
If runsql(strsql) = True Then
rct.MoveFirst
End If
set MSF2.recordset=rct
.Redraw = False
Set .Recordset = rstTemp
.Redraw = True