上海历史上没有建过都。

上海发展比较晚,没有一个王朝能够定都上海。

古代,中国社会以农为本,工商业不是主流,即便后期某些地方已出现了比较繁荣的工商业,整体经济还是农业为主,古代远洋贸易所占比重也不大。所以现在看起来像上海这么好的地理为主,古代没觉得如此,到清朝末年上海也不过是个县。上海所在的江南区域经济最发达,中心城市在苏州,显然那时候在运河边上比在海边还有优势。

古代像上海这样的地区不太适合做天朝的国都,一望无际的平原,无险可守。因为古代的政治军事斗争的重心一直在北方,即便经济重心南移了,政治中心也还多在北方。即便选在南方,对古代王朝来说,最适合建都的地方在南京,像杭州、武昌这类地方都比上海合适。

进入近代社会后,尤其是现代社会,军事方面对建都的权重影响都会降低。地形优势在现代化武器面前重要性降低,在和平为主的年代,首都设在海岸线也关系不大,真发生战争了,这个首都也可以随着形势变化而迁移。

上海也曾被提议做国都,康有为就对光绪皇帝就提出过迁都上海,当然后来也没有实行。仅从经济上来看,上海做首都也未尝不可。世界上比较类似的形式有,巴西迁都前的里约,纽约也有段时间做过美国的首都。

上海成为通商口岸、大都市,本身也是不平等条约的产物,近代一直有中国人管不到的地方,从民族心理来说,也不太接受他成为中国首都。

可能由于传统因素,在国人的选择中,北京还是最受青睐。南京临时政府时期,国民党议员投票选择的首都还是以北京最多,孙中山为了牵制袁世凯,以国民党总理身份强令要求才迫使这些议员改投南京,但袁世凯最终还是不去南京。解放战争时期,南京政府的制宪国大会上,多数代表还是提议北京为国都。

上海当地百姓本身也对成不成首都不感冒,上海已经是最大最繁荣的城市