title: Connecting Excel to Mysql Update PROBLEM
body: <p>i am connecting to a mysql table through vba in excel and i am updating it:</p>
  
  <pre><code>Set cn = New ADODB.Connection
  cn.Open "DRIVER={MySQL ODBC 5.1 Driver};" &amp; _
      "SERVER=localhost;" &amp; _
      "DATABASE=employees;" &amp; _
      "USER=root;" &amp; _
      "PASSWORD=M1llen;" &amp; _
      "Option=3"
  'lets get the batch info
  '
  ' open a recordset
  Set rs = New ADODB.Recordset
  rs.Open "batchinfo", cn, adOpenKeyset, adLockOptimistic, adCmdTable
  ' all records in a table from Report 1
  'Set wsSheet1 = wbBook.Worksheets(1)
  ' better refer by name
  'Set wsSheet1 = wbBook.Worksheets.("Report 1")
  Worksheets.Item("Report 1").Select
  dpath = Range("B2").Text
  atime = Trim(Range("B3").Text)
  rtime = Trim(Range("B4").Text)
  lcalib = Trim(Range("B5").Text)
  aname = Trim(Range("B6").Text)
  rname = Trim(Range("B7").Text)
  bstate = Trim(Range("B8").Text)
  
  instrument = GetInstrFromXML()
  
  With rs
      .AddNew ' create a new record
      ' add values to each field in the record
      .Fields("datapath") = "abc"
      .Fields("analysistime") = atime
      .Fields("reporttime") = rtime
      .Fields("lastcalib") = lcalib
      .Fields("analystname") = aname
      .Fields("reportname") = rname
      .Fields("batchstate") = bstate
      .Fields("instrument") = instrument
      .Update ' stores the new record
  End With
  </code></pre>
  
  <p>the issue is that the only field that gets updated is the instrument field!!</p>
  
  <p>here i a desc of the batchinfo table mysql:</p>
  
  <pre><code>mysql&gt; desc batchinfo;
  +--------------+---------+------+-----+---------+----------------+
  | Field        | Type    | Null | Key | Default | Extra          |
  +--------------+---------+------+-----+---------+----------------+
  | rowid        | int(11) | NO   | PRI | NULL    | auto_increment |
  | datapath     | text    | YES  |     | NULL    |                |
  | analysistime | text    | YES  |     | NULL    |                |
  | reporttime   | text    | YES  |     | NULL    |                |
  | lastcalib    | text    | YES  |     | NULL    |                |
  | analystname  | text    | YES  |     | NULL    |                |
  | reportname   | text    | YES  |     | NULL    |                |
  | batchstate   | text    | YES  |     | NULL    |                |
  | instrument   | text    | YES  |     | NULL    |                |
  +--------------+---------+------+-----+---------+----------------+
  9 rows in set (0.00 sec)
  </code></pre>
  
  <p>funny thing is that when i recreate the table without the auto_increment then it works fine</p>
  
  <p>i really need someone to answer this question, i dont care if you have a hunch or not exactly sure, i will try any solution</p>