蔣澤楓,李春祥
高麗史家金富軾所著《三國史記》成書于1145年,據宋代王應麟的《玉海》記載,《三國史記》在問世后二十五年就傳入中國,并被藏于秘閣。1394年(朝鮮李朝太祖三年),慶州府使金居斗等刊行了《三國史記》木刻版本。本文依據孫文范等校勘的《三國史記》[1]以及《中國歷史年代簡表》[2]《二十史朔閏表》[3]《文淵閣〈四庫全書〉電子版》[4]《〈三國史記〉日食記錄考證》[5]《中國古代天象記錄總集》[6]等相關資料,對《三國史記》中干支紀日及所記史實進行比對考證,對《三國史記》中有誤的干支紀日及所記史實進行分析辨誤,試圖找出致誤原因。
《三國史記》中以干支紀日方式記載的史料共計76條,這些史料有四種情況:日食61條,占總數的80.3%;其他天文現象13條,占總數的17.1%;國王即位1條,占總數的1.3%;國王薨1條,占總數的1.3%。干支紀日與所記史實都正確的50條,占總數的65.8%;中國史籍記載正確,《三國史記》抄錄致誤的7條(見“《三國史記》干支紀日簡表”,以下均簡稱“簡表”,第5、7、9、11、13、14、16條),占總數的9.2%;中國史籍記載有誤,《三國史記》照錄致誤的10條(見“簡表”第1、3、4、8、10、17、22、23、25、26條),占總數的13.2%;中國史籍記載有正有誤,《三國史記》抄錄有誤、記載致誤的2條(見“簡表”第6、21條),占總數的2.6%;中國史籍無記載,《三國史記》自己致誤的7條(見“簡表”第2、12、15、18、19、20、24條),占總數的9.2%,本文將對《三國史記》中以上這四種有誤的干支紀日史料進行分析考證。
《三國史記》干支紀日的史料中,有7條屬于中國史籍記載無誤,《三國史記》抄錄致誤的情況,如“簡表”第5條,“逸圣尼師今八年(141)秋九月辛亥晦,日有食之。”[1]16這條史料在《后漢書》中有記載:“永和六年(公元141年)九月……辛亥晦,日有食之。”[7]271據考證:“此次日食確有發(fā)生,我國大部地區(qū)可見帶食而入,但位于朝鮮半島東部的新羅并不在觀測范圍之內。”[5],可見中國史書記錄無誤,《三國史記》抄錄時無考證致誤。再如“簡表”第9條,“哀莊王二年(801),夏五月壬戌朔,日當食不食。”[1]137這條相關史料《舊唐書》記載:“貞元十七年(801)五月壬戌朔,日有食之。”[8]394《新唐書》也有相近記載:“貞元十七年(801)五月壬戌朔,日有食之,在東井十度。”[9]831中國史書的這條日食記錄,據“模擬結果顯示,這次日食的確發(fā)生了,長安食分為0.300,慶州食分為0.444。應該說,在當時的技術條件下,還是可以觀測到這次日食的。”[5]《三國史記》將一次在新羅可以觀測到的日食,且中國典籍準確記載的日食記錄在抄錄時寫為“日當食不食”,可見新羅沒有專門的天象記錄人員,并且在抄錄中國典籍時主觀隨意性很大。又如“簡表”第11條,“真圣王二年(889)三月戊戌朔,日有食之。”[1]159這條史料《新唐書》記載為:“文德元年(888)三月戊戌朔,日有食之。”[9]280《資治通鑒》的記載為:“文德元年(888),三月,戊戌朔,日有食之。”[10]8375依據《二十史朔閏表》推算,公元889年三月朔日為壬辰日,889年農歷12個月中沒有戊戌朔,而888年三月朔日則為戊戌日。可見《新唐書》《資治通鑒》的原始材料無誤,《三國史記》抄錄時致誤。由此可以推斷正確的日期應為888年三月戊戌朔,這一天為888年農歷三月一日,公歷888年4月15日。
中國史籍記載有誤,《三國史記》照錄致誤的史料有10條,如“簡表”第3條,“南解次次雄三年(6),冬十月丙辰朔,日有食之。”[1]5《漢書·王莽傳上》居攝元年(6)條有同樣記錄:“冬十月丙辰朔,日有食之。”[11]4086但是經過“軟件計算結果顯示,當日并無日食。”[5]可知本條日食記錄《漢書》有誤,《三國史記》照錄致誤。再如“簡表”第22條,“比流王三十二年(335)冬十月乙未朔,日有食之。”[1]293據《晉書》記載:“成帝咸康元年(335),冬十月乙未朔,日有食之。”[12]179但“經計算,該年東亞無日食。”[5]可見這條史料《晉書》的記載有誤,金富軾照錄進《三國史記》而致誤。又如“簡表”第10條,“興德王十一年(836)春正月辛丑朔,日有食之。”[1]146據《新唐書》記載:“開成元年(836)正月辛丑朔,日有食之。”[9]237但是“經計算,該日亞洲大陸無日食出現。”[5]可見這條日食記錄《新唐書》記載有誤,《三國史記》照錄致誤。又如“簡表”第17條,“西川王四年(273)秋七月丁酉朔,日有食之。”[1]212《晉書》記載:“泰始九年(273)秋七月丁酉朔,日有食之。”[12]63這條日食記錄,“經計算,該日全球無日食。”[5]此條史料亦是由于《三國史記》照錄中國史籍有誤史料而致誤。
對于中國不同典籍所記同一件史事,當出現不同記載時,《三國史記》缺少對于史料正誤的分辨,抄錄了有誤的記載。如“簡表”第6條,“阿達羅尼師今十三年(166)春正月辛亥朔,日有食之。”[1]19這條日食記錄《后漢書·桓帝紀》記載為:“延熹九年(166)春正月辛亥朔,日有食之。”[7]316《資治通鑒》的記載為:“延熹九年(166)春正月辛卯朔,日有食之。”[10]1785依據《二十史朔閏表》推算,公元166年正月朔日為辛卯日,可知《后漢書·桓帝紀》的相關記載有誤,《資治通鑒》不誤,據此可推測《三國史記》乃抄錄《后漢書·桓帝紀》致誤。由此可以推斷《三國史記》此條史料的正確表述應為:“阿達羅尼師今十三年(166)春正月辛卯朔,日有食之。”這一天為公元166年農歷一月一日,公歷2月18日。再如“簡表”第21條,“比流王五年(308)春正月丙子朔,日有食之。”[1]292《晉書》的記載為:“懷帝永嘉二年(308)春正月丙子朔,日有蝕之。”[4]日期與《三國史記》相同,而《資治通鑒》則不同:“春正月丙午朔,日有食之。《考異》曰:帝紀、天文志云‘丙子朔’。誤。今從《長歷》。”[10]2735再查《二十史朔閏表》,公元308年正月朔日為丙午,可知《資治通鑒》的記載正確,而《三國史記》卻抄錄了《晉書》的有誤記載,錯將該年正月朔日記為丙子。
《三國史記》中有7條有誤的以干支紀日方式記錄的史料,在中國史籍中沒有記載。如“簡表”中第2條,“始祖赫居世居西干五十四年(前4)春二月己酉,星孛于河鼓。”[1]4依據《二十史朔閏表》,公元前4年農歷二月朔日為壬子日,當月無己酉日,而同年三月有己酉日,可見《三國史記》此條史料有誤。再如“簡表”第12條,“真圣王十一年(898)冬十二月乙巳,王薨于北宮。”[1]161依據《二十史朔閏表》,公元898年農歷12月朔日為丙寅日,本月沒有乙巳日,而本年農歷11月朔日為丙申日,本月有乙巳日,據此可以推知準確日期應為“真圣王十一年(898)冬十一月乙巳”,如以此為準,則這一天為公元898年農歷十一月十日,公歷898年12月26日。再如“簡表”第15條,“故國川王四年(182)春三月甲寅夜,赤氣貫于大微如蛇。”[1]201依據《二十史朔閏表》,公元182年農歷三月無甲寅日,而二月和四月都有甲寅日,若以二月甲寅日為準,則這一天為182年農歷二月二十七日,公歷4月18日;若以四月甲寅日為準,則這一天為182年農歷四月二十八日,公歷6月17日。又如“簡表”第18條,“己婁王九年(85)夏四月乙巳,客星入紫微。”[1]282依據《二十史朔閏表》,公元85年農歷四月沒有乙巳日,而距離85年四月最近的三月和五月都有乙巳日,若以公元85年三月乙巳日為準,則這一天為公元85年農歷三月二十六日,公歷5月8日;若以公元85年五月乙巳日為準,則這一天為公元85年農歷五月二十七日,公歷7月7日。
《三國史記》以干支紀日方式所記錄的史料中34.2%有誤,其致誤表現有以上四種形式,其致誤因素除上文涉及到的之外,以下因素也需要考慮:
第一,《三國史記》以干支紀日方式所記錄的史料主要抄錄自《漢書》《后漢書》《舊唐書》《新唐書》《新五代史》《晉書》《宋書》《魏書》《陳書》《南齊書》《南史》《北史》《周書》《隋書》《資治通鑒》等中國史籍,這些中國史籍中相關記錄的正誤對《三國史記》中相關記錄的正誤起到了決定性作用。
第二,新羅曾于“景德王八年(749)三月,置天文博士一員,漏刻博士六員。”[1]123但從《三國史記》有誤干支紀日條可以看出,其天文博士所起作用甚微。如果新羅的天文官有自己準確的天文觀測記錄,對于中國史籍記載有誤的相關條目,就能將其更正過來,因為在《三國史記》76條以干支紀日方式所記錄的史料中沒有發(fā)現《三國史記》對中國史籍相關有誤記錄進行更正的情況,尤其是對于中國史籍無記載的相關記錄,《三國史記》致誤率極高。
第三,對于中國史籍記載無誤的條目,《三國史記》抄錄時人為致誤,說明《三國史記》編者處理史料的態(tài)度不嚴謹,缺乏求實的科學態(tài)度,可以推斷編撰者金富軾有時出于某種目的對相關史料進行改動。除了本文所提到的,這一點在《三國史記》中許多地方可以看到。比如“為文獻和考古資料證明的高句麗早期和西漢王朝的隸屬關系,在《三國史記·高句麗本紀》中卻沒有只言片語提及,金富軾何以對史書的記載視而不見?解釋也只能有兩種可能:一是所謂的‘古記’沒有記載,二是金富軾有意掩蓋這些史實。”[13]68這一問題在研究《三國史記》的時候尤其要引起注意。
第四,天命觀是導致《三國史記》干支紀日有誤的另一原因。古代中國人對天命的基本看法產生了天命觀,“天命”最早出自《尚書》:“有夏多罪,天命殛之。”[14]92天命觀對中國古代的思想觀念產生了重要影響。中國古代史書中天命觀多有體現,金富軾所采錄的干支紀日史料表現了《三國史記》的天命觀,以天人感應表現出對天的尊敬和回應。在特殊的天象發(fā)生前后,國家往往有重要的事情發(fā)生,或者統治者要實行相應的政令以應天意。如新羅赫居世居西干“四年(前54)夏四月辛丑朔,日有食之……五年(前53)春正月,龍見于閼英井,右肋誕生女兒。”[1]2因此,中國典籍中和新羅、高句麗、百濟相關的干支紀日,《三國史記》基本照錄,同時對于中國典籍沒有的干支紀日,《三國史記》會根據史事的需要進行記錄,由此產生了錯誤。如“簡表”第24條,百濟東城王“十七年(495)夏五月甲戌朔,日有食之。秋八月,高句麗來圍雉壤城,王遣使新羅請救。”[1]311《魏書》《南齊書》《南史》《北史》《資治通鑒》中均無此條日食記錄,“該年中國東北與朝鮮半島也沒有發(fā)生日食”[5],為了與高句麗圍雉壤城這件大事相對應,《三國史記》杜撰了一次沒有發(fā)生的日食,這一點在研究《三國史記》的時候也要引起注意。
總之,對于《三國史記》干支紀日的研究關系到《三國史記》日食等天象記錄的正確性,也關系到相關史實的正確性。在《三國史記》的相關研究中,對于其史料要追根溯源,最大可能地確保采用史料的可靠性,由此才能得出相對正確的史學結論。

《三國史記》干支紀日簡表
①此條日食記錄《漢書·元帝紀》有類似內容:“建昭五年(前34)夏六月……壬申晦,日有食之,不盡如勾,因入。”依據韓鋼的《〈三國史記〉日食記錄考證》(以下簡稱:據韓鋼《考證》):“經筆者軟件模擬,該日全球無日食。”可見此條干支紀日為《漢書》記錄有誤,《三國史記》照錄致誤。
②依據《二十史朔閏表》,公元16年農歷七月朔日為己丑日,當月無戊子日,而己丑日前一日為戊子日,正好為公元16年農歷六月晦日。經查《漢書·王莽傳》(卷九十九中)的相關記載為:“天鳳三年七月……戊子晦,日有食之,大赦天下。”《資治通鑒》(卷三十八,漢紀三十)相關記載為:“(王莽)天鳳三年(16)秋七月戊子晦,日食。”據此可知《漢書·王莽傳》與《資治通鑒》的相關記載可能有誤,《三國史記》照錄致誤。由此推斷,正確的日期可能為“十三年(16)秋六月戊子晦。”若以“十三年(16)秋六月戊子晦”為準,則這一天為公元16年農歷六月二十九日,公歷8月21日。
③《后漢書·靈帝紀》(卷八)記載為:“中平三年(186)五月壬辰晦,日有食之。”《資治通鑒》(卷五十八,漢紀五十)的記載為:“中平三年(186)五月壬辰晦,日有食之。”依據《二十史朔閏表》,公元186年農歷五月晦日為壬辰日,為公元186年農歷五月三十日,公歷7月4日,可知《三國史記》自己致誤,正確的日期表述應為:“三年(186)夏五月壬辰晦,日有食之。”
④《后漢書·獻帝紀》(卷九)記載為:“建安六年(201)春三月丁卯朔,日有食之。”《資治通鑒》(卷六十四,漢紀五十六)的記載為:“建安六年(201)春,三月,丁卯朔,日有食之。”依據《二十史朔閏表》,公元201年二月朔日為丁卯日,三月朔日為丁酉日,據韓鋼《考證》:“經計算,該年二月丁卯(3月22日)確有一次日食,東亞均在觀測范圍之內。可見,中國史官誤將二月記為三月,而金氏不審,延續(xù)了這個錯誤。”據此推斷《后漢書》與《資治通鑒》相關記載有誤,而《三國史記》照錄致誤。因此應該以二月朔日為準,則“二月丁卯朔”為公元201年農歷二月一日,公歷3月22日。
⑤《新五代史》的相關記載為:“乾化元年(911)春正月丙戌朔,日有食之。”依據《二十史朔閏表》,公元912年農歷一月朔日為庚辰日,而公元911年農歷一月則為丙戌朔,由此可以推斷《三國史記》記載有誤。若以912年一月庚辰朔為準,則這一天為公元912年農歷一月初一,公歷1月22日;若以公元911年一月丙戌朔為準,則這一天為公元911年農歷一月初一,公歷2月2日。
⑥據韓鋼《考證》:“《后漢書·孝靈帝紀》光和元年(178):‘冬十月……丙子晦,日有食之’,同書《五行六》有相關記載。計算結果也顯示該日東亞確有日食。但朝鮮半島食分均較小,國內城食分更低至0.077,不在可以觀測的范圍之內,不能不讓人生疑。”
⑦據韓鋼《考證》:此條日食記錄與新羅伐休尼師今三年(186年)的日食記錄為同一次日食,“此次日食雖已由模擬運算所確認,但朝鮮半島各地可見程度較小,慶州食分相對較大,也僅為0.104,國內城食分更低至0.039。這種程度的日偏食,即便事先做出了比較準確的預報,限于當時的技術條件,也是不可能觀測到的。”
⑧據韓鋼《考證》:“考該年正月晦當癸亥,我國史籍無相關內容,且該年全年無東亞可見日食,明顯其記載有誤……查我國史籍,發(fā)現東漢桓帝延熹八年(165)曾于‘春正月丙申晦’發(fā)生日食:《后漢書·孝桓帝紀》‘春正月……丙申晦,日有食之。’經計算,這次日食的確發(fā)生。”若以此為準,則這一天為公元165年農歷一月三十日,公歷2月28日。
⑨此條中國史書并無記錄,《三國史記》自己致誤。據韓鋼《考證》:“經模擬計算,該日確有日食發(fā)生,但觀測范圍僅限于今俄羅斯庫頁島以北、日本北海道及北美洲北部,中國與朝鮮半島均不可見。”
⑩《宋書》《魏書》《資治通鑒》中均無相關記錄。《南史》有基本相同的記載:“順帝二年(478)三月己酉朔,日有蝕之”。《陳書》《資治通鑒》無相關記載。據韓鋼《考證》:“軟件模擬的結果也顯示,該日前后整個東亞并無日食發(fā)生。”可見此條為《三國史記》照抄《南史》致誤。依據《二十史朔閏表》,公元478年三月朔日為戊申日,一月為己酉朔,據此推測《南史》的記載有誤。若以前者為準,則這一天為公元478年農歷三月一日,公歷4月18日;若以后者為準,則這一天為公元478年農歷一月一日,公歷2月18日。
?《陳書》《周書》《北史》中無相關記錄。《南史·陳本紀》中記載為:“永定三年(559)五月丙辰朔,日有蝕之。”《資治通鑒》(卷一百六十七,陳紀一)中記載為:“(陳武帝)永定三年(559),五月,丙辰朔,日有食之。”依據《二十史朔閏表》,公元559年五月朔日為丁巳日,七月朔日為丙辰日,據此可以推斷《南史》《資治通鑒》中相關記載應該有誤,《三國史記》照錄致誤。若以前者為準,則這一天為公元559年五月一日,公歷6月21日;若以后者為準,則這一天為公元559年七月一日,公歷8月19日。
?據韓鋼《考證》:“經計算,該年(592)東亞無日食發(fā)生。”《隋書·高祖下》的記載為:“開皇十二年(592)秋七月……壬申晦,日有蝕之。”《資治通鑒》(卷一百七十八,隋紀二)的記載為:“開皇十二年(592)秋七月……壬申晦,日有食之。”依據《二十史朔閏表》,公元592年七月晦日為癸酉日,距離七月最近的晦日為九月壬申日,據此可知《隋書》《資治通鑒》的相關記載有誤,《三國史記》照錄致誤。