i think this wrong in your delete code :
vb Code:
  1. Dim Sql As String = "DELETE FROM asignatura Where ID_ASIGNATURA= 'id.Text.Trim'"
should be:

vb Code:
  1. Dim Sql As String = "DELETE FROM asignatura Where ID_ASIGNATURA= '" & id.Text.Trim  & "'"

id.Text.Trim is textbox control, doesn't it ?