2016-08-30 9 views
0

Я новичок в VB6, и у меня проблема с MSChart.columnlabel, где я буду извлекать данные из базы данных, и у меня есть поле имени в моей таблице продуктов. Проблема в том, что всякий раз, когда я запускаю программу, выдается сообщение msgbox.Mschart control.columnlabel не извлекает данные из Ado, используя VB6

товар не может быть найден в коллекции, соответствующей запрашиваемому имени или порядку. " Пожалуйста, помогите мне. Спасибо

Ill пост мой код здесь:

Private cn As ADODB.Connection 
Private rsProducts As ADODB.Recordset 
Private Sub Form_Load() 
Set cn = New ADODB.Connection 
MSChart1.ToDefaults 

Const ConnectionString = "MySQL ODBC 5.1 Driver; SERVER=10.237.2.152; DATABASE=monitoring;UID=root;PWD=c0k3float;DSN=itemearv;" 
' Open the connection. 
    cn.Open ConnectionString 
    Dim strQuery As String ' SQL query string. 

    ' Create a query that retrieves only four fields. 
    'strQuery = "SELECT ProductName, UnitPrice, 
    'UnitsInStock, UnitsOnOrder FROM Products" 
    strQuery = "Select value from test.product" 
    Set rsProducts = New ADODB.Recordset 
    ' Open the recordset. 
    rsProducts.CursorLocation = adUseClient 
    rsProducts.Open strQuery, cn, adOpenKeyset 
    ' Set the DataSource to the recordset. 
    With MSChart1 
     .ShowLegend = True 
     Set .DataSource = rsProducts 
     .ColumnCount = rsProducts.RecordCount 
     .RowCount = 1 
     .RowLabel = "TESTING" 
    End With 
    Dim i As Integer 
    i = 1 
    While i <= rsProducts.RecordCount 
     With MSChart1 
      .Column = i 
      .Row = 1 
      .Data = rsProducts!Value 
      .ColumnLabel = rsProducts!Name 
      End With 
      rsProducts.MoveNext 
      i = i + 1 

    Wend 
    Set rsProducts = Nothing 


End Sub 

ответ

2

Изменить команду select включить Name:

strQuery = "Select value,Name from test.product" 
+0

Правильно, значение поля в тестовой таблице выбран, но вы сделали звонок, чтобы данные в поле Name, а также приведет к ошибке, поскольку имя не существует в возвращаемых данных. –