MS Access组合框未获取行源值

时间:2019-03-15 00:20:20

标签: mysql vba ms-access

所以我有这个Access表单,该表单在load事件上使用DAO连接连接到MySQL DB。

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim SQL As String

    Set db = OpenDatabase("", False, False, Globales.ConnString)
    SQL = "SELECT tbl1Facturas.ID, tbl1Facturas.Fecha, tbl1Facturas.Localidad_ID, tbl5Localidades.NombreLocalidad, tbl1Facturas.Suplidor_ID, tbl6Suplidores.NombreSuplidor, tbl1Facturas.Factura, tbl1Facturas.Subtotal, tbl1Facturas.[Credito al Subtotal], tbl1Facturas.[CSA IVU MUNICIPAL], tbl1Facturas.[IVU MUNICIPAL], tbl1Facturas.[Credito IVU Municipal], tbl1Facturas.[CSA IVU ESTATAL], tbl1Facturas.[IVU ESTATAL], tbl1Facturas.[Credito IVU ESTATAL], tbl1Facturas.[Total de Compra], tbl1Facturas.[Exento al IVU ESTATAL], tbl1Facturas.[Metodo de Pago], tbl1Facturas.[ID Metodo Pago], tbl1Facturas.Factura_PDF, tbl1Facturas.MetodoPago_PDF, *" _
        & "FROM (tbl1Facturas INNER JOIN tbl5Localidades ON tbl1Facturas.[Localidad_ID] = tbl5Localidades.ID) INNER JOIN tbl6Suplidores ON tbl1Facturas.[Suplidor_ID] = tbl6Suplidores.ID;"

    Set rs = db.OpenRecordset(SQL, dbOpenDynaset, dbAppendOnly)
    Set Me.Form.Recordset = rs

在这种形式下,我有一个组合框,无法从我按如下方式设置的“行来源”属性中获取值:

SELECT tbl5Localidades.ID, tbl5Localidades.NombreLocalidad FROM tbl5Localidades; 

我不知道我在做什么错,因为当它们是Access Tables时,这种方法曾经可以工作,但是现在我将表移到了MySQL服务器上,唯一不起作用的是组合框。

非常感谢所有帮助,谢谢!

1 个答案:

答案 0 :(得分:0)

这段代码做到了!

Dim rs2 As DAO.Recordset
Dim SQL2 As String
    SQL2 = "SELECT tbl5Localidades.ID, tbl5Localidades.NombreLocalidad FROM tbl5Localidades;"
    Set rs2 = db.OpenRecordset(SQL2, dbOpenDynaset, dbReadOnly)

    With rs2
    .MoveFirst
    Do Until .EOF
    Text18.AddItem !ID & ";" & !NombreLocalidad
    .MoveNext
    Loop
End With