Hola.
Estas muy mal eso de concatenar los datos es un error de programacion usa parametros te ahorras muchos problemas.
Código vb.net:
Ver originalDim query = "INSERT INTO PRODUCTO(PRO_CODIGO,PRO_NOMBRE,PRO_CATEGORIA) VALUES(@cod,@nom,@cat)"
Dim cmd As New SqlCommand(query, conexion)
cmd.Parameters.AddWithValue("@cod", codigo)
cmd.Parameters.AddWithValue("@nom", nombre)
cmd.Parameters.AddWithValue("@cat", categoria)
Como veras el código queda mejor legible y mejor organizado.
Saludos.