作者:杨斜2602934873 | 来源:互联网 | 2024-09-25 14:30
DimcnAsNewADODB.ConnectionDimcmdAsNewADODB.CommandDimrstAsNewADODB.Recordsetcn.Mod
Dim cn As New ADODB.Connection
Dim cmd As New ADODB.Command
Dim rst As New ADODB.Recordset
cn.Mode = adModeShareDenyWrite
cn.Open "dsn=TextBook"
Set cmd.ActiveConnection = cn
rst.CursorLocation = adUseClient
cmd.CommandText = " SELECT Products.product_id, Products.product_name,Products.quantity_in_unit, Products.出版时间Supplier.company_name as scompany_name ,Products.unit_price FROM tastrade!supplier RIGHT OUTER JOIN tastrade!products ON Supplier.supplier_id = Products.supplier_id"cmd.CommandType = adCmdText
cmd.CommandType = adCmdText
rst.Open cmd, , adOpenForwardOnly, adLockReadOnly
Set rst.ActiveConnection = Nothing
If rst.RecordCount = 0 Then
MsgBox "教材科目前已无库存!", 64, "结果"
Welcome.WriteTemplate
Exit Sub
End If
With Response
.Write ""
.Write ""
.Write "
库存书目
"
.Write "
"
.Write "
"
.Write "
教材代码 | 教材名称 | 作者 | "
.Write "出版时间(版次) | 出版社 | 单价 | "
While Not rst.EOF
.Write "
"
.Write "" & rst.Fields("product_id") & " | "
.Write "" & rst.Fields("product_name") & " | "
.Write "" & rst.Fields("quantity_in_unit") & " | "
.Write "" & rst.Fields("出版时间") & " | "
.Write "" & rst.Fields("scompany_name") & " | "
.Write "" & rst.Fields("unit_price") & " | "
.Write "
"
rst.MoveNext
wend
.Write "
"
.Write "
"
.Write "
返 回
"
.Write ""
End With
Set cn = Nothing
Set cmd = Nothing
Set rst = Nothing
返回的rst中只有一个表中的字段,而另一表的字段为空,左、右、内、全联接都试过了,能返回一个表就算不错的,有的什么也回不来。
14 个解决方案
Products.出版时间Supplier.company_name 是什么?是不是掉了逗号?
另外,cmd.commandType=adcamdtext 多谢了一句。
to BrentIvan:
怎么了,是不是我的问题太幼稚了,还是没有可行的办法,要换方案?可我被困的好苦。
具体来说:我在做网上订购教材的系统,用VB中的IIS应用程序,B/S模式,数据库是VF的,库中有表products包括书名和出版社代码,表supplier包括出版社代码和出版社名,我想把书名和出版社名同时显示出来,需要两个表的连接,在VF中建视图,各种联接均达不到所需效果,要么只返回一个表中的内容,要么一个都没有。现用SQL执行也不行。
看不出有什么问题。
这样吧,程序打包(包括dbf文件),发给我看看 brentivan@163.net
对于您的热情我无比感激,想再问您,在VB里实现两个表的连接的确可行是吗,我用标准工程中的ADO和DBDrid控件在普通窗体中做实验都不行。我是新手,怎样能给您加分?
虽然我没有这样做过,不过想来应该是可以的。
加分不必急,解决再说。 你的程序发了吗?
我的E-mail:flytiger1977@etang.com
武松:
那我在标准EXE中把Ado和DBGrid与数据库中的视图连接,此视图就是库中两个表联接而成的,显示时,总有问题,左、右联接时只显示其中一个表的字段,另一表中字段为空,内联接时都为空,根本不显示数据,全联接又不符合要求,怎么回事?具体说来,就是我要把一个表中的出版社代码用另一表中的出版社名代替。恳请高手指点。