Twenty pupils at a Beijing primary school were wounded on Tuesday in an attack that police said had left at least three seriously injured, state news agency Xinhua reported.
The attack happened at Xuanwu Normal Experimental Affiliated Number One Primary School in Beijing's Xicheng district just after 11.15am, local police said on their official Weibo account.
The police statement added that the three most seriously wounded pupils were in a stable condition, but their injuries were not thought to be life-threatening.
A film of a meeting between school staff and parents circulated widely on social media, in which parents were told a "school worker" had carried out the attack.
Several of the pupils were taken to the intensive care unit of the nearby Xuanwu Hospital.
Some parents claimed on social media that around 20 children had been injured, although there were conflicting reports about whether a hammer or a knife had been used in the attack.
"The details are still not clear," wrote one parent on WeChat. "They were all younger students and were stabbed by an adult."
In the video footage, which showed dozens of angry parents demanding details from staff, they were repeatedly urged to stop filming by the head teacher.
"A worker at our school attacked 20 students in a first-floor stairwell. It is not like what everyone is saying, he did not use a knife.
"Everyone please keep calm. Second grade classrooms are on the first floor, it was children from those classes," said the head teacher.
"The children were immediately rushed to hospital. We have been communicating with parents but some of them have gone to the hospital to see their children. At the moment, if we have not called you, your child should be safe."
A doctor at the hospital posted on social media: "The mayor today came to the hospital to wait with us while the children were being medically treated. We have paused several operations to save all the children."
A man has been detained on suspicion of carrying out the attack.
In recent years, China has seen a spate of knife attacks on schoolchildren. In October last year, a 39-year-old woman was detained on suspicion of stabbing 14 children at a kindergarten in Chongqing.
Two children were also stabbed to death outside a Shanghai kindergarten in June, while nine children died in a knife attack at a school in Shaanxi province in April.