Se puede poner de 2 formas:
1º forma (sin usar parametros):
INSERT INTO tabla1(ID,Proveedor,Tipo) VALUES (15,'IBM',35)
2ª forma (con uso de parametros):
Dim MiSQL As String = "INSERT INTO tabla1(ID,Proveedor,Tipo) VALUES (@IDCentro,@Proveedor,@Tipo)"
................
cm.Parameters.Add(New SqlParameter("@IDCentro", SqlDbType.Int, 4)).Value = 15
cm.Parameters.Add(New SqlParameter("@Proveedor", SqlDbType.NVarChar, 50)).Value = "IBM"
cm.Parameters.Add(New SqlParameter("@Tipo", SqlDbType.TinyInt, 1)).Value = 35
.....
La 1ª forma tiene mucho menos código y además permitiría el uso de una clase común, par todas las inserciones que se hagan en la base de datos. Pero que incovenientes tiene, pues veo por ahi, que poca gente lo hace de la forma 1ª.