try
Sentencias del procedimiento .....
Catch ex As Exception
MsgBox(ex.Message)
End Try
Efectivamente, lo q hace es por cualquier error en las sentencias del procedimiento cede el control al Catch ex AS Exception y ex contiene el error y la sentencia en la que ha ocurrido.
En cuanto a ExecuteNonQuery Ejecuta una sentencia SQL definida en un ComandText y contra la conexion especificada la sentencia debe de ser de tipo Update, Delete o Insert, no devuelve registros, solamente nos devuelve el nº de registros afectados en la sentencia.
ejemplo:
Crear una conexion
dim conexionxx as new sqlconnection()
conexionxx.connetionstring = -...
.......
Definir Sentencia SQL
dim sql as string
sql = " INSERT INTO .......
crear comando
dim comando as new sqlcommand(sql,conexionxx)
dim rerultado as integer
conexionxx.open
resultado = comando.executenonquery()
conesionxx.close