In English there is a difference in meaning between "at school" and "at the school". To say "at school" implies that someone is attending the school as a student, rather than just there to pick up their child or something. Similar situation with "in hospital" (as a patient) and "in the hospital" (as a visitor), and "in prison" (as an inmate) and "in the prison" (as a visitor or officer).
In the US we would typically use "in prison" for a convict and "at the prison" for a visitor, unless we were emphasizing the fact that the visitor in question is inside the prison and not, say, hanging around outside the walls.
We also never say "in hospital" and it actually sounds ungrammatical to me, except I suppose in the context of a newspaper headline or a hyphenated adjective.
In my surroundings we often say "she's in hospital" to declare that someone is away for treatment in a hospital, without specifying a certain hospital. When we say "he is in the hospital" it usually declares a state of more concern than the previously mentioned phrase, in this case it always refers to the Poole Hospital (main public hospital in town). I worked in care and we often had service users go for treatment to private hospitals locally or for a short stay.