Chen Zuihang rushed into the Wulidun elementary school in Macheng in the central province of Hubei and began slashing at students with a kitchen knife yesterday, official media said.
Li Jianxin, a school teacher, said teachers caught the 35-year-old migrant worker and called the police.
According to the investigation, Chen used drugs and showed abnormal behavior before the stabbing spree. He was tested positive for methamphetamine in a urine drug test.
Chen has a history of drug use, and was detained by his hometown police in Luoyuan County of east China's Fujian Province for drug use in 2006 and 2011, the police said.
More From This Section
"An eight-year-old boy had suffered massive blood loss by the time he was sent to our hospital," said Huang Dan, a doctor in the city's People's Hospital.
Huang said the boy is still in critical condition and needs further observation in the intensive care unit.
The local government said the school head has been suspended and the person in charge of school security has been sacked. Further investigation is under way.