宋天禧三(san)年(nian)(nian)(1019年(nian)(nian))中(zhong)進士(shi),曾擔任宜州(廣西(xi))、夏州(湖北(bei))、安州(河北(bei))、無錫(江蘇)縣(xian)宰、推(tui)官(guan),后(hou)(hou)改任大理寺丞。任期內,其母(mu)謝世,為(wei)守孝(xiao)而寓居揚(yang)州。景祐元年(nian)(nian)(1034年(nian)(nian))舉賢良方正,遷(qian)禮部員(yuan)外郎(lang),后(hou)(hou)出任洪州(今江西(xi)南(nan)昌)通判,不久又(you)調往揚(yang)州。因曾上(shang)疏皇帝諫(jian)議十條,由此被選入(ru)直史館,為(wei)開(kai)封府推(tui)官(guan)、三(san)司(si)鹽鐵判官(guan)。
寶元(yuan)元(yuan)年(nian)(1038年(nian)),安化(hua)(在今(jin)(jin)甘(gan)肅省(sheng)安化(hua)縣)一帶的少(shao)數民族(zu)首領(ling)蒙光月(yue)率領(ling)部眾攻打宜州(今(jin)(jin)廣西宜山縣一帶),他遂(sui)向(xiang)朝廷(ting)提(ti)出(chu)“制(zhi)蠻”方案,朝廷(ting)采用其策(ce)略,平定了蒙光月(yue)之亂。以后他繼續向(xiang)皇(huang)帝上言,陳述(shu)治國(guo)主(zhu)張,提(ti)出(chu)爵賞宜慎重,擇官須謹慎,明定薦舉原則,規定各級(ji)人(ren)員著裝服(fu)飾以端(duan)正禮儀,用才須得當,注(zhu)重將帥(shuai)的選拔,明辨(bian)忠良(liang)奸佞,整頓邊防,加強戰備等,宋仁宗(zong)贊同并采納其建議。不久被(bei)(bei)任(ren)命為史館(guan)修(xiu)撰,后又被(bei)(bei)提(ti)拔為知制(zhi)誥、翰林學士,不久再(zai)遷為尚書省(sheng)禮部郎中。
由(you)于他(ta)博(bo)學多智,能言善辯(bian),尤其(qi)喜論國家大事(shi),言辯(bian)頗為犀利,也(ye)常不經意(yi)地傷了他(ta)人(ren)。宋仁宗(zong)對此頗為不悅,將其(qi)調出(chu)尚(shang)書省,改派為侍讀學士、集賢殿修撰、河(he)陽(今河(he)南孟縣)知(zhi)府(fu),不久又調為河(he)中(今山(shan)西(xi)永濟)知(zhi)府(fu)。尚(shang)未到任,便因病離開人(ren)世,卒(zu)葬(zang)于江蘇省丹陽市城(cheng)東(dong)硯(yan)山(shan)西(xi)北區。