More than 1,000 dead pigs have been found floating in Shanghai's main waterway, the Chinese city's government said Monday, as residents expressed fears over possible drinking water contamination.

Workers in the southwestern district of Songjiang fished more than 1,200 dead swine out of the Huangpu river, which goes on to cut through the commercial hub and create its waterfront Bund district.

The haul included both piglets and huge adult pigs, the Shanghai government said in a statement on its website.

Photos carried by state media showed workers in blue uniforms with long-handled rakes moving the pinkish corpses in the water and on shore.

Reports said the pigs probably came from the adjoining upstream province of Zhejiang, where farmers were believed to have dumped them in the river after they died of disease, and the first bodies were discovered last Thursday.

"Is the water still drinkable after dead pigs were found floating in it?" Shanghai resident Liu Wanqing was quoted as saying by the China Daily newspaper.

"The government has a responsibility to conduct a thorough investigation and provide safe water to residents."

Shanghai said it was testing water samples from the river on an hourly basis and so far all indicators were "normal".

A total of 12 boats were patrolling to fish the dead hogs out of the water, the Global Times newspaper said, as experts warned the danger to the water supply would increase if the bodies started to rot.

Separately Shanghai's agricultural commission said some of the pigs had tested positive for porcine circovirus, which it described as a common swine disease that does not affect humans.