I have the following code in an XML Web Service, and need to speed it up a bit. It takes about half a second to complete, and its called about 17000 times in a row. Any thoughts?

VB Code:
  1. <WebMethod()> Public Function UpdateProductInLocalDB(ByVal strDetails As String) As Boolean
  2.         Try            
  3.             Dim strTemp() As String = Split(strDetails, vbLf)
  4.             Dim strSQLStatement As String, mySqlConnection As SqlConnection
  5.             If strTemp.GetUpperBound(0) = 12 Then
  6.                 Dim strProductDetails = "'" & strTemp(0) & "', " & "'" & strTemp(1) & "', " & "'" & strTemp(2) & "', "
  7.                 strProductDetails &= "'" & strTemp(3) & "', " & "'" & strTemp(4) & "', " & "'" & strTemp(5) & "', "
  8.                 strProductDetails &= "'" & strTemp(6) & "', " & strTemp(7) & ", " & "'" & strTemp(8) & "', "
  9.                 strProductDetails &= "'" & strTemp(9) & "', " & "'" & strTemp(10) & "', " & "'" & strTemp(11) & "'"
  10.                 strSQLStatement = "DELETE FROM tblProducts WHERE strProductReference = '" & strTemp(0) & "';"
  11.                 strSQLStatement &= "INSERT INTO tblProducts VALUES (" & strProductDetails & ");"
  12.                 mySqlConnection = New SqlConnection(strConnectionString) : mySqlConnection.Open()
  13.                 Dim mySQLCommand As New SqlCommand(strSQLStatement, mySqlConnection)
  14.                 mySQLCommand.ExecuteNonQuery() : mySqlConnection.Close() : mySqlConnection = Nothing
  15.                 Return True
  16.             Else
  17.                 Throw New Exception("strTemp.GetUpperBound(0) != 12")
  18.             End If
  19.         Catch ex As Exception
  20.             ErrorLog(Now & vbCrLf & ex.ToString & vbCrLf & vbCrLf & strDetails & vbCrLf & vbCrLf & strConnectionString & vbCrLf & vbCrLf)
  21.             Return False
  22.         End Try
  23.     End Function