Man kann beides sagen. Es hängt auch davon ab um welches Englisch es gerade geht und was man sagen will. So gibt es auch Unterschiede im amerikanischen Englisch und dem britischen Englisch.
"He is at school" bedeutet generell, dass er in der Schule ist bzw. in die Schule geht.
Generell bedeutet "He is in School," dass er in die Schule geht, bzw., dass er Schüler ist. (Im Amerikanischen bedeutet school aber nicht nur Schule, sondern auch andere Bildungseinrichtungen wie College oder Uni. Hier würden die Britien eher university oder College sagen.)
Man kann auch sagen: "He is studying in the school" oder "he is studying at school". Diese Sätze bedeuten, dass er in oder an der Schule lernt.
"He is eating at school" bedeutet, dass er an der Schule isst.
"He is eating in school" bedeutet, dass er in der Schule/während des Unterrichts isst.
"There are many chairs in the school" bedeutet, dass in der Schule/bzw im Schulgebäude viele Stühle sind.
"There was a fire in the school" bedeutet, dass es in der Schule (im Schulgebäude/Gelände) gebrannt hat.
"There was a fire at school" bedeutet, dass es an der Schule gebrannt hat.
Will ich deutlich sagen, dass jemand in dem Schulgebäude ist: "He is in the school" oder "He is in the school building".
Dabei ist es wichtig zu bemerken, dass "He is in the school" und "he is in school" nicht unbedingt das gleiche bedeutet. Ersteres bedeutet, dass er in dem Schulgebäude ist (egal, ob als Schüler oder Lehrer oder Einbrecher), Letzteres, dass er in die Schule geht, bzw. den Unterricht besucht.
Sagt man aber beispielsweise "Ask someone in the school", kann das bedeuten: frag jemanden, der dort zur Schule geht. Ist gerade jemand anwesend, der dort zur Schule geht, kann er mit "I'm in the school" antworten, wobei die Betonung auf "I'm" liegt. Es könnte auch ein Dritter sagen, der weiß, dass ein Anwesender dort zur Schule geht "Ask him, he's in the school", was ebenso bedeutet, dass er dort zur Schule geht.
Mit "the school" meint man meist eine spezifische, d.h. bezieht man sich auf eine bekannte/identifizierte Schule. Sagt man einfach "in/at school", ist school nicht spezifisch sondern allgemein. "He is at school" bedeutet also, dass er generell in der Schule ist bzw. in die Schule geht. "He is at the school" bedeutet, dass er in der Schule ist - man geht davon aus, dass das Gegenüber weiß welche Schule gemeint ist.