商代後期紀年述略
2018-01-23劉桓
劉 桓
(北京科技職業學院文物藝術品學院)
一、 引 論
本文所謂商代後期紀年,是指從盘庚遷殷至帝辛亡國之年的年數,這是前人曾經着手嘗試而未能解决的問題。今因武王伐紂之年(前1111年)和西周積年問題已經獲得解决,拙作《西周金文曆譜述略》(上篇)、(下篇)已經初步排列出一個西周金文曆譜。(1)拙作《西周金文曆譜述略》(上篇)、(下篇),分别載於《北方論叢》2015年第4期、第5期。該曆譜年代框架已定,當然不排除還有少數金文年曆會有所調整,或者補充,凡此屬於糾錯、補正,本人近年已經下功夫作了這一工作。本文屬於同一系列論文。現在已經具備條件,根據古書《尚書》、《逸周書》、《古本竹書紀年》及甲骨、金文的記載、綫索可靠的傳世史料,來嘗試解决商代後期的紀年問題。至於董作賓先生《殷曆譜》的排譜研究,近三十多年學者繼續深鑽細研,於此頗有推進,然此殷曆年代問題,殷商文獻可用的資料更少,文獻驗證尚存在困難,故本文重點談商代後期紀年問題,或涉及周曆,則可以得到文獻驗證。
關於商朝總年數,古文獻中主要説法有三: 第一,496年説。《古本竹書紀年》説:“湯滅夏以至于受,二十九王,用歲四百九十六年。”戴家祥先生力主此説,謂:“商代國家的建立,距今約三千九百多年,據各家所載,由成湯至紂之滅,凡十七世三十一王,共四百九十六年(據《竹書紀年》)。”(2)戴家祥: 《甲骨文的發現及其學術意義》,《歷史教學問題》1957年第3期。《古本竹書紀年》的496年説,與古書説商代500年頗爲相合。《孟子·公孫丑下》:“五百年必有王者興,其間必有名世者。”《大戴禮記·禮察》:“然則如湯武能廣大其德,久長其後,行五百歲而不失。” 賈誼《新書·數寧》:“臣聞之,自禹已下五百歲而湯起,自湯已下五百餘年而武王起。”第二,629年或628年説。《左傳·宣公三年》載:“桀有昏德,鼎遷于商,載祀六百。”《漢書·律曆志》:“自伐桀至武王伐紂,六百二十九歲。”董作賓主此説。一説六百二十八年(《新唐書·曆志》一行説)。西漢時曾流行商代六七百年的説法,賈誼《上疏陳政事》:“然而湯武廣大其德,行六七百歲而弗失。”第三,576年説。董作賓先生引《鬻子》 説湯:“二十七世,積歲五百七十六歲,至紂。”第四,爲550年、553年説。其根據也是《古本竹書紀年》:“湯滅夏以至于受,二十九王,用歲四百九十六年。”陳夢家先生舉《孟子·盡心下》“由湯至於文王五百有餘歲”,認爲《竹書紀年》的496年,需加上文王在位50年和武王克殷前的4年,商代約爲550年。(3)陳夢家: 《殷虚卜辭綜述》,北京: 中華書局1988年版,頁214。張立東《關於商代積年的初步研究》思路略同陳説,推算出自湯滅夏至武王克商是1580-1027=553年,從湯滅夏到文王受命(前1083年)爲497年。(4)張立東: 《關於商代積年的初步研究》,北京大學中國考古學研究中心、北京大學震旦古代文明研究中心編: 《古代文明》第2卷,北京: 文物出版社2003年版,頁196—197。以上550年、553年説都不見典籍記載,其論述依據亦不無問題。另外,該説認爲商代31王,當然《史記·殷本紀》集解引譙周曰“殷凡三十一世”,《上博簡·容成氏》也説“汤王天下三十又一世而受作”(《大戴禮記·少閒》也説31 世)。然而董作賓先生列舉商代世系各王,衹舉出30王,(5)董作賓: 《甲骨學六十年》,《中國現代學術經典·董作賓卷》,石家莊: 河北教育出版社1996年版,頁215。説明31王的説法還须進一步闡釋。至於商代629年,唐蘭先生認爲這是傳説,不可信。(6)唐蘭: 《中國古代歷史上的年代問題》,《新建設》1955年3月號。我認爲,對於這一傳統説法不能輕易否定,因爲《左傳·宣公三年》明言商朝“載祀六百”,是與629年相一致的。這一上古的説法是否可信,初步估算並不難,兹暫從董作賓先生列舉商代世系各王 30王之説。大家知道,根據《古本竹書紀年》記載盤庚遷殷之後的商代後期12王已經是273年,那麽前期共18王(未算盤庚)比後期多出6個王,年數上應該比273年多出七八十年才對,這樣算來商代總年數爲629年,還是比較合理的。過去有的學者對於年數問題不作仔細分析,輒輕易加以判斷,故所論不爲典要。當然629年這一年數還必須認真進行驗證,目前研究尚不完全成熟,總要作到與歷日相合方好。不過無論如何,總還可以看出端倪,那就是《古本竹書紀年》的496年説是有問題的,由此增益衍生的550年説、553年説,還有古代《鬻子》的576年説,年數可能都偏少,都不如629年説(或628年説)年數合理且有文獻依據,劉歆至皇甫謐都傳承這一數據是有依據的。
自夏商周斷代工程开展以來,考古學家反復論證漸成共識,夏商分界在公元前1600年左右,(7)夏商周斷代工程專家組編著: 《夏商周斷代工程1996—2000年階段成果報告(簡本)》,北京: 世界圖書出版公司北京公司2000年版,頁81。這樣商朝年數取捨問題便似乎變得較以前容易解决了。因爲商代積年600年説(按照古人説數字的舉大數的習慣,可以包括629年説)無法容納其中,似乎衹有《古本竹書紀年》的496年增益的553年説較爲可取。可是我看問題的取捨不是這樣簡單,關鍵在於不能偏離古文獻的研究。對於這一年代學難題,我認爲研究的途徑有二: 一是用傳統的曆日對照的方法來驗證解决,但目前難度很大,推算具體年月的曆朔還缺乏可用的工具書,殷曆的研究也是一個問題,非積以時日不能爲功,故不妨暫先擱置;一是用上古年代學結合最新的碳十四測年數據,與古文獻記載相參證,探索古史,判定考古遺迹的朝代,這一研究要做得好,亦較爲可行,可以解决問題。本文衹討論資料較多的盤庚遷殷以來商代後期的紀年問題,這個問題解决了,也有助於商朝總年數和始年的推算。
二、 關於殷墟卜辭中五次月食的年代推算
判定商代後期的年代,離不開對殷墟卜辭中五次月食的年代推算,這一研究的首創要歸功於董作賓先生和劉朝陽先生,特别是董作賓大著《殷曆譜》中的《交食譜》對殷墟卜辭中五次月食的年代進行了推算,後來他又撰文對此有所修正。此外,陳遵嬀、巖一萍、陳夢家、張培瑜、趙却民、范毓周等先生均有論述。天文曆算專家張培瑜先生的《甲骨文日月食與商王武丁的年代》一文曾總結説:“60年來,研究甲骨文日月食並給出具體證認的有22家,共有40種説法,表一列出22家最後的證認結果。”(爲省篇幅,本文不再轉録該表)(8)張培瑜: 《甲骨文日月食與商王武丁的年代》,《文物》1999年第 3期。
董作賓《交食譜》説庚申月食在“武丁時代西元前1311年”,曾獲得一些學者的贊同。但有的月食年代,例如 壬子(應作“乙酉”,經過嚴一萍綴合甲骨釋出)月食定爲小辛十年(前1361年),甲午月食定爲小乙八年(前1342年),則未免年代太早,(9)董作賓: 《交食譜》,《殷曆譜》,臺北: 藝文印書館1977年版。後來董先生一一重新進行考證,分别對月食出現的年份曆日時間等有所糾正。如乙酉月食,董氏“推定在西元前一二七九年九月二日丙戌二時六分的月偏食”,(10)董作賓: 《卜辭中八月乙酉月食考》,《董作賓先生全集》乙編第五册,臺北: 藝文印書館1977年版。董作賓先生弟子嚴一萍先生精研甲骨,重新在董氏研究的基礎上作了考證。他考證的結果發表在《甲骨斷代問題》一書中,本文簡化爲下表:
年份(BC)月日干支 日食發生日期1325 830壬午武丁15年9月15日13111123庚申武丁29年12月15日1282 113壬申武丁58年11月15日127991 乙酉祖庚2年8月15日(按嚴拼合了五片卜旬版後,董作賓推定)1278 226癸未祖庚3年2月15日(11)嚴一萍: 《甲骨斷代問題》,臺北: 藝文印書館1991年版,頁19。
這一考證結果可以代表董、嚴兩家的觀點,學者也有傾向此説的。其中第一條壬午月食,根據董作賓等學者的研究應該是甲午月食,所以嚴氏的這一考證年份有誤。關於諸家對殷代月食的考證成果,温少峰、袁庭棟《殷墟卜辭研究——科學技術篇》、常玉芝《殷商曆法研究》、馮時《殷卜辭月食資料的整理與研究》曾經有所概括。(12)温少峰、袁庭棟: 《殷墟卜辭研究——科學技術篇》,成都: 四川社會科學院出版社1983年版,頁39—46;常玉芝: 《殷商曆法研究》,長春: 吉林文史出版社1998年版,頁19—65;馮時: 《殷卜辭月食資料的整理與研究》,《古籍整理研究學刊》2002年第6期。常玉芝先生研究殷商曆法,對五次月食的甲骨卜辭一一分期斷代,認爲都是武丁時期的,對董説斷代有所糾正。其中第一條壬午月食,也改稱甲午月食;第二條庚申月食,常先生根據卜辭改稱“己未夕皿庚申月食”,並采用裘錫圭先生皿即嚮字的釋讀,對該卜辭作了深入解讀探索,因而在這一具體干支上能够糾正舊説。(13)常玉芝: 《殷商曆法研究》,頁19—50。不過在定年方面,常氏對這五次月食的具體時間傾向於較晚的年份,但也没有確定。
美國華裔學者彭瓞均、邱錦程、周鸿翔先生的論文也談到第一期殷墟卜辭中五次月食的年代推算,可列表(此處對原表内容有所簡化)如下:
干支日月貞人名認證的月食日期(BC)甲午無賓1322.12.25庚申十三月争1311.11.24癸未無争1278.2.27乙酉八月争1279.9.2壬申無1282.11.4(14)彭瓞均、邱錦程、周鸿翔: 《古代日月食的天文斷代和統計研究》,紀念甲骨文發現100周年國際學術研討會論文,1999年,見宋鎮豪主編: 《甲骨文献集成》第32册,成都: 四川大學出版社2001年版。
應該説這一推算結果與董作賓、嚴一萍先生推算的多數日期大同小異,但是已經糾正了壬午月食的誤讀。卜辭斷代,也糾正了董、嚴的意見,認爲都是武丁時期的。從大的方面判斷,我基本上相信這一研究結果對的占多數。但是,根據今人以及我個人對殷曆的研究,我認爲表中原有紀月的兩次月食的日期推算似乎還可以討論。
我們平心静氣地分析比較,從大的方面看,彭氏等這幾次月食年代數據都在59年的年代範圍内。這五次月食的甲骨卜辭,常玉芝先生也證明都是武丁時期的,(15)常玉芝: 《殷商曆法研究》,頁20—46。武丁在位59年没有疑義,那麽根據夏商周工程工程測年的數據、甲骨系列樣品分期及AMS測年數據,甲骨一期、武丁早擬合後的日曆年代(BC)爲: 1323—1287,1287—1273;1319—1280;1314—1278;1315—1278;1316—1278。武丁中,1285—1255,1240—1220;1285—1255,1235—1220;1280—1231;1285—1225。武丁晚,1255—1195;1260—1195。(16)夏商周斷代工程專家組編著: 《夏商周斷代工程1996—2000年階段成果報告(簡本)》,頁54。與彭氏等的考證年代相比較,可知大的方面都在上述甲骨測年武丁年代範圍之内,没見有大的出入。至於具體到武丁時期每次月食的年份是否準確無誤,我以爲這一研究多數還是對的;但是具體到有月份記載的兩次月食的年份解讀,我認爲還不能如此認定。因爲根據今人以及我個人對殷曆的研究,在武丁時期,殷曆的一月相當於夏曆四月,(17)劉桓: 《關於殷曆歲首之月的考證》,《甲骨徵史》,哈爾濱: 黑龍江教育出版社2002年版,頁89。殷曆的一月相當於夏曆四月説,是常正光先提出來的。有的學者認爲是五月,(18)常玉芝: 《殷商曆法研究》,頁406。王暉亦主此説。與周曆相差多少,似乎也應該在這個範圍内求之。而古書説夏商周只差一個月,實際上那是殷末的情况。另外,記載庚申月食的這片卜辭應更正爲“己未皿(郷,嚮)庚申月有食”。其中“嚮”字的釋讀,是常玉芝先生研究殷商曆法采用裘錫圭先生説。(19)常玉芝: 《殷商曆法研究》,頁19。關於這次月食發生的月份,上面的“十三月”是否是月食發生的月份?舊有“十二月”、“十三月”和“一月”三種説法。董作賓先生主張十二月説,他説:“月食必在望,庚申距癸丑八日,是癸丑在此月之上旬。此月當有丑、亥、酉三癸日也,依卜旬文例由下而上,癸未一旬,正相密接,而其下記有‘十三月’。第三版有未、己、卯三癸日,而癸未下亦有‘十三月’之文,是癸未爲十三月之第一次卜旬日無疑。由是逆推,則丑亥酉三癸日,必爲十二月,亦無足疑也。”(20)董作賓 : 《交食譜》,《殷曆譜》下編,頁500下。常玉芝: 《殷商曆法研究》頁 41對此有申論。我認爲董氏之説確切無疑,這次月食正是發生在殷曆十二月。既然是殷曆十二月,那就大約相當於夏曆二、三月,周曆一月約略近之。查張培瑜編著的《三千五百年曆日天象》一書,前1284年一月四日己未(按“己未”似應作“庚申”爲是)月食,初虧5.29,食甚6.33,復圓 7.37。(21)張培瑜編著: 《三千五百年曆日天象》,鄭州: 大象出版社1997年版。這次月食的時間非常像“己未皿(郷,嚮)庚申月有食”。若解釋爲發生在庚申之始,延續到清晨,就非常恰當。至於乙酉八月月食,定爲前1279年9月2日也有問題。因爲殷曆八月换算成夏曆應該是十一、十二月,周曆可能接近夏曆。查《三千五百年曆日天象》,前1304年一月十五日乙酉月食,(22)張培瑜編著: 《三千五百年曆日天象》。有可能就是這次月食。我的考證結果暫列於下:
癸未夕月食前1325年8月31日〔甲〕午夕月食前1322年12月25日乙酉夕月食前1304年1月15日己未夕皿庚申月食前1284年1月4日壬申夕月食前1282年11月4日
天文曆算專家張培瑜先生早期考證月食曾從董作賓説,後來在《甲骨文日月食與商王武丁的年代》一文列舉諸説,他的考證已經屬於年代較晚的説法。年代較晚説法中除了陳夢家先生外,張培瑜先生可稱有代表性的一家,其説法爲夏商周斷代工程所采用。張先生給出的五次月食的結果是:
癸未夕月食前1201年7月12日〔甲〕午夕月食前1198年11月4日己未夕皿庚申月食前1192年12月27日壬申夕月食前1189年10月25日乙酉夕月食前1181年11月25日(23)張培瑜: 《甲骨文日月食與商王武丁的年代》,《文物》1999年第3期。
既然這五次月食都發生在武丁時期,其年代顯然都應在甲骨系列樣品測年數據武丁年代的範圍内並與之相對應才對,然而一比較年代纔發現不對,連最早的“癸未夕月食”在前1201年,與武丁早期甲骨文上限相比,至少晚了100多年,這樣連勉强地列在武丁晚期以後都做不到(據本文考證,該年代已經不屬於武丁時期,甚至能在祖庚、祖甲、廪辛、康丁之後)。其餘四次月食,年代更晚,根本無法排進武丁年代。爲何作如此推算呢?我猜想也許受天文考年武王克商在前1046年一説的影响。月食考年與考古測年數據如此脱節,相差一百多年,自然無法自圓其説,結果也是不能令人相信的。反觀我所綜合的彭瓞均等學者三次月食推算結果,加上我個人對於兩次月食的推算,基本上與上述測年數據相合。從大的方面看,二者孰是孰非,似乎無需多説,考古測年數據已經清楚顯示出來,相信大家如果不懷成見,是不難判斷的。當然,有的考古專家强調説:“根據灃西遺址測出武王克商的年代範圍是公元前1050—1020年;根據殷墟的測定,一期晚和二期的年代範圍在公元前1261—1195年,完全支持天文推定的武丁年代在公元前1250—1192年。”(24)《中國考古學的發展與〈考古〉的歷程——紀念〈考古〉創刊60週年筆談》,《考古》2015年第12期,頁6。但這一推定似乎忘記了與甲骨測年數據差了許多,難道二者數據不合,還要反過來用考古遺址測年數據來修改甲骨測年數據?值得深思。
在此必須説明一下,考古資料的佐證,在文獻資料不足的情况下是非常必要的。殷墟甲骨卜辭數量很多,已經形成系列,且斷代明確,碳14測年年代數據也比較可信,基本可以作爲直接證據來用;至於藉助考古遺址中出土的文物測年,整合出來的年份資料,是否可以直接利用,好像還是存在争議的。對於考古資料似應不僅着眼全面,尤當采用關鍵可靠部分,研究結果纔比較可信。
三、 論商代後期的紀年
本文所謂商代後期的紀年,是指盤庚遷殷至帝辛亡國(周武王克商)之年的年數。除了戰國時期的《竹書紀年》之外,後來學者也嘗試做過紀年,如晋人皇甫謐著《帝王世紀》,可惜此書已經散佚不全;又如宋代著作《太平御覽》、《皇極經世》、《通鑒外紀》、《通志》等嘗試做過紀年,但是依據很難説。今人董作賓、陈夢家、李仲操、曹定雲、常玉芝、夏商周斷代工程等不少學者都做過這方面的研究,虽有成績,但也是得失交織,而且缺乏必要的總結。我認爲,儘管董作賓先生這方面研究也有得有失,畢竟開創在先,我們還是先從董作賓的考證説起。董氏《中國文化的認識》一文説:“中國歷史上有確切年代的是共和元年、西元前八四一年辛酉。周代的終結是周赧王五九年、西元前二五六年乙巳。這是没有問題的。問題却在周年的開始武王伐紂之年。現在用新曆譜證明了武王伐紂是西元前一一一一年庚寅,這是唐代一行和尚曾用《大衍曆》推算出來的。舊史料是真古文《尚書·武成》篇和《逸周書》的《世俘解》所記殷一月二月,和周四月的日子對證起來,完全符合。這年是武王的十一年,向上推是西元前一一二二年己卯,文王的五十年,文王崩,武王即位。史家算周年,從這一年開始,叫作周受命年。所以舊有的周年是由一一二二年己卯到二五六年乙巳,共計八六七年,其中侵占了殷帝辛十一年。把帝辛的六十三年减爲五十二年,實際上周代有八五六年。”(25)董作賓: 《中國文化的認識》,《中國現代學術經典·董作賓卷》,頁634。按董氏説周朝的年數867年要减去侵占殷帝辛11年,實際上爲856年,總的説來不誤。但具體考述錯誤有二: 一是公元前1122年是周受命年不錯,但把這説成文王崩、武王即位之年,叫作周受命年則非是,清代學者陳喬樅《今文尚書經説考》已經考證清楚,今文家認爲文王受命7年去世,次年武王即位。二是他把帝辛的63年减爲52年,有誤。從卜辭、金文結合文獻推算,帝辛在位實爲33年,《帝王世紀》即述牧野之戰在紂即位33年,清閻若璩《尚書古文疏證》推算同此説,斷代工程認爲帝辛有34個祀周,大致近是。關於帝辛在位年,下文還要涉及。由於董氏把前1122年當作武王即位之年,因此在與《逸周書》的曆朔相對照時,其年代必然出現錯誤,得不到準確的驗證。
周武王克商的年代在前1111年已經明確無誤,周世系年代這方面,藉助《古本竹書紀年》的記載,並參考甲骨文金文,已經可以計算出季歷、文王(西伯)、武王的幾個關鍵年代的數據,同時可以藉此推算商代武乙、文丁、帝乙、帝辛在位之年分别爲公元前多少年。周文王、武王的年代必然涉及到今文、古文兩家的紀年問題,我們謹從司馬遷用今文説,然後據此向上推算。現在可以知道,武王即位之年是前1114年,那麽文王(西伯)在位之年就應該是前1164年,也就是帝乙元年。當時,西伯之父季歷已經去世。文王在位50年,就在帝乙、帝辛時期的50年;文王去世後,加上武王繼位至征商的4年,爲54年。由於典籍和前人的研究證明帝辛在位33年,帝乙在位之年等於54年减去此33年得21年,再减去文丁在位的1年,帝乙在位爲21年。藉助武丁時期五次月食的研究,再根據《尚書》和《古本竹書紀年》的記載,武丁以來各王的在位年代變得清晰起來。從過去的研究來看,董作賓先生《殷商疑年》、陳夢家先生《殷虚卜辭綜述》曾對盤庚遷殷後的商年(但該書非一一考證年數)作過考證。上個世紀90年代以來,研究年代學的李仲操,研究甲骨文、商代史的曹定雲、常玉芝等先生和夏商周斷代工程的其他學者對商代後期的諸王積年也作過考證。筆者相信《古本竹書紀年》所言“自盤庚徙殷至紂之滅二百七十三年,更不徙都”,因此,對於李仲操所持241年説、(26)李仲操: 《對武王克商年份的更正》,《中原文物》1997年第1期。常玉芝持265年説(27)常玉芝: 《殷商曆法研究》,頁56—57。以及夏商周斷代工程持253年説(28)夏商周斷代工程專家組編著: 《夏商周斷代工程1996—2000年阶段成果報告(簡本)》,頁60。,筆者認爲以上説法不無可取之處,唯因總年數不足, 故不擬在此討論,本文衹討論有商代後期各王在位年數的總年數273年説和相近的275年説。
先看董作賓先生在《殷商疑年》中考證商代晚期遷殷後至滅亡共275年之説。各王在位年數爲:
盤庚 14年
小辛 21年
小乙 21年
武丁 59年
祖庚 7年
祖甲 33年
廪辛 6年
康丁 8年
武乙 4年
文丁 13年
帝乙 37年
帝辛 52年
總計 275年(29)董作賓: 《殷商疑年》,《中國現代學術經典·董作賓卷》,頁378。
董説有許多優點,如參考《尚書·無逸》叙述商王在位年數來定年數,遠比用《今本竹書紀年》爲可靠。有些商王在位年數,《尚書·無逸》在説到“肆祖甲之享國,三十有三年”之後,從此所立的商王因爲壽命的關係在位時間都不甚長,即“自時厥後,亦罔或克壽: 或十年,或七八年,或五六年,或四三年”。這些年數,雖然没有具體説何王在位多少年,但顯然是指廪辛等王而言,其敘述無疑是可信的。故董氏定廪辛6年、康丁8年,其説有一定的依據。另外,對盤庚、小辛、小乙在位年數的判斷亦頗可取,至於275年的總年數也近是。但也有幾個明顯的失誤,如武乙4年、帝乙37年、帝辛52年等,與我們依據古書和甲骨文、金文得出的年數不符,這些問題的討論下文還要涉及。
其次,曹定雲《殷代積年與各王在位年數》也認爲殷代後期總年數爲273年或274年(含武王伐紂之年),各王在位年數如下:
盤庚 14
小辛 3
小乙 10
武丁 59
祖庚 11
祖甲 33
廪辛 4
康丁 31
武乙 35
文丁 22
帝乙 20
帝辛 31或32
總年數 273或274(30)曹定雲: 《殷代積年與各王在位年數》,《殷都學刊》1999年第4期。
曹定雲先生所説多數年份可從,對董説有所糾正,可是也有少數年份欠妥需要調整。例如陳夢家先生認爲般庚、小辛、小乙在位約共60年左右,(31)陳夢家: 《殷虚卜辭綜述》,頁210。上举董作賓先生則認爲這三王爲14+21+21=56年,(32)董作賓: 《殷商疑年》,《中國現代學術經典·董作賓卷》,頁378。而此處14+3+10=27,年數失之於少。又如康丁31年,采用的是常玉芝先生的説法,原來定此年數,可能是認爲該時期甲骨文比較多,然此年數的增加勢必會影響武丁在位年代向前推,從而使甲骨文月食研究離開甲骨文測年數據所指示的範圍,故不如董作賓的8年説合理,因爲董説特别强調《尚書·無逸》的記載。再如文丁在位20 年以上,這也是取常玉芝先生説,根據周祭祀譜得出,亦不可從。常先生擬定的文丁二十祀祀譜,是根據肆簋铭文“妣戊武乙奭”得出的,常氏認爲武乙之配妣戊不屬於周祭系統。(33)常玉芝: 《周祭制度研究》,頁126—133。近年也有學者認爲武乙之配妣戊屬於周祭系統。我認爲該祀谱問題有二: 一是對武乙之配妣戊的祭祀,衹能是在帝乙、帝辛時期,不可能在文丁時期。《史記·殷本紀》明言武乙死後,“子帝太丁立。帝太丁崩,子帝乙立”,“帝乙崩,子辛立”,唯帝乙、帝辛稱武乙之配爲妣,而文丁衹能稱武乙之配爲母。二是常氏《周祭制度研究》内容很嚴謹,唯此祀譜的年代與古文獻記載不合。因爲文丁、帝乙、帝辛的在位年代,通過《古本竹書紀年》等古書以及甲骨文、金文的記載,再結合文王在位年數50年的推算,相互印證,已經基本能弄清楚,文丁在位應爲12年,而非20年。此點在下面年代排列的敘述還要提到。至於紂的在位年數,夏商周斷代工程研究認爲帝辛共舉行了34個祭祀週期,爲34年,(34)《關於甲骨文和商代金文年祀的討論》,《光明日報》1999年6月11日第7版。實際上應爲33年,包括武王伐紂之年。
因爲文王在位的年代的確定,就可以上推季歷繼位之年,而季歷之立相當於商朝武乙33年。由於這些年代數據的明確,就可以排列出盤庚遷殷後的商代各王在位年數及公元年份。我做的商代後期各王在位年數表如下:
盤庚(前1383—前1367)17年《太平御覽》卷八三引《史記》在位十八年。小辛(前1366—前1346)21年《太平御覽》卷八三引《史記》。小乙(前1345—前1326)20年《太平御覽》卷八三引《史記》。武丁(前1325—前1267)59年《書·無逸》。祖庚(前1266—前1257)10年《書·無逸》“或十年”,祖庚卜辭爲數也不少。祖甲(前1256—前1224)33年《書·無逸》。廪辛(前1223—前1220)4年《書·無逸》“或四三年”。康丁(前1219—前1212)8年《書·無逸》“或七八年”,與董説同。武乙(前1211—前1177)35年古本《竹書紀年》。文丁(前1176—前1165)12年周西伯(文王)於前1165年即位,此年以下,商代紀年可與周人紀年相互推算。帝乙(前1164—前1144)21年參考王晖説。(35)王晖《從殷卜辭黄組兩種“王廿祀(祠)”看帝辛卜辭的存在證據》,《殷都學刊》2003年第1期。帝辛(前1143—前1111)33年《帝王世紀》,清閻若璩説(《尚書古文疏證》第84),又以相關年數推算。以上總年數273年。
今按,陳夢家先生認爲盤庚、小辛、小乙约共60年左右,上舉董作賓先生則以爲這三王爲14+21+21=56年,本人據武丁即位年份向前推算爲58年,這三個推算數據均相近,相信距離真實的年份即便有誤差也不會有多大。本表最準確的年代應是武乙、文丁、帝乙、帝辛四代,基本可靠;武丁、祖甲的年數可靠,但年份系推算,也可能有很小的誤差;祖庚、廪辛、康丁的在位年數,本人的计算是自盤庚遷殷至商亡的總年數,减去盤庚、小辛、小乙的在位年數約共58年,再减去武丁、祖甲、武乙、文丁、帝乙、帝辛的在位年數,即273-58-(59+33+35+12+21+33)=22,就是説祖庚、廪辛、康丁三王在位年數總共纔有22年可供分配,然後根據《尚書·無逸》並參考諸家之説,進行確定,應該較爲近實。
附 自武乙33年至商亡大事年表
約前1211—前1190年武乙前期及武乙暴虐,犬戎寇邊,周古公逾梁山而避于岐下(《後漢書·西羌傳》)。后稷之孫,實維太王,居岐之陽,實始翦商(《詩·魯頌·閟宫》)。前1179武乙三十三年季歷立(據年代推算)。前1178武乙三十四年周王季歷來朝,武乙賜地三十里,玉十瑴,馬八疋。前1177武乙三十五年周王季伐西洛鬼戎,俘二十翟王。文丁元年(前1176) 前1175文丁二年周人伐燕京之戎,周師大敗。前1174文丁三年洹水一日三絶。前1173文丁四年周人伐余無之戎,克之。周王季命爲殷牧師。前1170文丁七年周又伐始乎之戎,克之。前1166文丁十一年周人伐翳徒之戎,捷其三大夫 (以上皆據《古本竹書紀年》)。前1165文丁十二年王季歷困而死,文王苦之(《吕氏春秋·首時》)。帝乙元年(前1164) 帝乙處殷(《古本竹書紀年》)
西伯昌繼位爲周方首领。前1163帝乙二年周人伐商(《古本竹書紀年》)。前1157帝乙八年“周文王立國八年,歲六月”地動(《吕氏春秋·制樂》)。前1156帝乙九年十月,帝乙從多田多伯征盂方伯炎,直到次年三月結束(據《商代周祭制度研究》)。前1144帝乙二十一年帝乙去世。帝辛元年(前1143)帝乙之少子辛母爲正后,得立,是爲紂。前1142帝辛二年納妲己(《初學記》卷九,皇甫謐説)。前1141帝辛三年紂王田獵獲虎(據安大略博物館藏虎上膊骨刻辭)。前1140帝辛四年四月,乙巳王在邵祭祀文武帝乙(據四祀邲其卣)。前1138帝辛六年至紂六祀,周文王初禴于畢(《唐書·曆志》)。前1134帝辛十年帝辛十祀,征人方(甲骨卜辭)。前1129帝辛十五年帝辛十五祀,再征人方(小臣艅尊)。前1122帝辛二十二年文王受命之年(次年稱元祀),始稱文王。商金文坂方鼎記紂五月在管(朝歌一帶)祭祀帝乙。前1121帝辛二十三年是年,“惟王(文王)元祀”正月,周文王妻太姒夢商廷生棘(清華簡《程寤》)。文王受命一年,斷虞芮之質(《尚書大傳》)。前1120帝辛二十四年(文王受命)二年伐于(《尚書大傳》)。前1119帝辛二十五年(文王受命)三年伐密须(《尚書大傳》)。前1118帝辛二十六年(文王受命)四年伐畎夷(《尚書大傳》)。前1117帝辛二十七年(文王受命)五年伐耆(《尚書大傳》),《尚書·西伯戡黎》説西伯戡黎,祖伊恐。前1116帝辛二十八年(文王受命)六年伐崇(《尚書大傳》)。玉環銘文文所述亦此事。前1115帝辛二十九年文王五十年,即受命七年。《尚書大傳》云七年而崩。《清華簡·保訓》:“隹王五十年,不豫。”《史記·周本紀》:“西伯蓋即位五十年。”又説:“詩人道西伯,蓋受命之年稱王而斷虞芮之訟。後十年(清陳喬樅《今文尚書經説考》十一已指出‘十’乃‘七’之誤)而崩,謚爲文王。”此爲今文家紀年。《逸周書·文傳解》:“文王受命之九年,時維暮春,在鄗,召太子發。”此爲古文家紀年,此九年等於今文家的文王受命七年。前1114帝辛二十九年文王受命八年,武王即位,未改元。“武王八年,征耆,大戡之。”(《清華簡·耆夜》)此爲今文家紀年。前1113帝辛三十年(文王受命)九年,武王上祭于畢。東觀兵,至于孟津(《史記·周本紀》)。前1112帝辛三十二年(文王受命)十年,東伐紂,周曆十二月戊午師渡孟津。前1111帝辛三十三年(文王受命)十一年,周曆二月初五(甲子)牧野之戰周軍獲勝,占領商都,紂王自焚死。
今按季歷被囚死、西伯立、周人復仇伐商這三個事件,環環相扣,緊密相連,彼此存在因果關係,中間不容間隔太長,否則難以講通。倘若文丁在位20年,則第一件事與後兩件事之間在年代上便會出現連不上的情况,故知非是,何况還不能通過曆譜驗證。
四、 《逸周書》曆日驗證
曆譜需要古書驗證,商代紀年中以《逸周書》保存的年曆資料較多,故可用張培瑜《中國先秦史曆表》(簡稱張表)進行驗證。從年曆對照來看,傳世的《逸周書》應該多數屬於古文家傳本,而清華簡《耆夜》顯然屬於《逸周書》今文家傳本,這是前人不甚清楚的。
清陳喬樅《今文尚書經説考》十一重新博考文献,關於古文、今文兩家及鄭玄折衷之説,都説自文王受命至武王崩中間凡十有八年,後面還説“信以傳信,疑以傳疑”。這固然反映出作者治學實事求是的態度,但也是由於當時條件所限,如没有《中國先秦史年表》這樣的科學著作,一時無法驗證結果。那麽這一傳統年代數據是否可信呢?没有别的辦法,衹有通過一一驗證,纔知道結果。藉助清陳喬樅考證的自周文王受命至武王崩古文、今文兩家的年數,我認爲西伯文王時期共五十年,已經形成周方的曆譜,是可以驗證的。
清代學者研究《逸周書》涉及年曆問題,有的引用了古曆資料考證,對我們的研究實有啓發。
1. 《逸周書·酆保解》:“維二十三祀庚子朔,九州之侯咸格于周,王在酆,昧爽,立于少庭。”清代學者研究《逸周書》涉及年曆問題,即引用了古曆資料。朱右曾《逸周書集訓校釋》:“文王即位四十二年受命,於是伐崇而作酆邑。云‘二十三祀’,非也。以周曆推之,文王四十三年十一月爲庚子朔,蓋古文四字積畫相重,故誤耳……周曆曆術見甄鸞《五經算術》:‘文王四十三年,元餘四百八十四歲,以章月二百三十五乘之,得十一萬三千七百四十,以章歲十九除之,得積月五千九百八十六,閏餘六。以周天分二萬七千七百五十九,乘積月如日法,九百四十而一,得積日十七萬六千七百七十一,小餘六百三十四,大餘十一。則是年周正月乙亥朔也。’求次月朔者,加大餘二十九、小餘四百九十九,小餘滿日法除之,從大餘,如是纍加之,推得是年建亥月爲庚子朔也。”按文王四十三祀今文應是前1122年,可是查張表衹有前1124年十一月庚子朔與之相合。前1124年是古文家四十三祀、今文家四十一祀,可知此處“四十三祀”合於古文家説,而不合於今文家説。朱右曾舉出的甄鸞《五經算術》這一資料非常重要,這就給我們以啓發,有助於我們理清《逸周書》的年曆問題。《逸周書》中的紀年經過逐一驗證,發現大都適合用古文家曆日,而本人采用的則是今文家曆日紀年,二者之間常有兩年的差距。古文家説文王受命九年去世,而今文家説此事在七年,故古文家九年、今文家七年仍差兩年,所以書中周文王紀年,以及武王沿用文王受命的紀年都必須比今文家早二年始能相合。值得注意的是《酆保解》“维二十三祀庚子朔”,按文王二十三祀今文家是前1142年,無庚子朔;若依古文家説就應向前推兩年,即前1144年,是年五月庚子朔,則完全相合。所以,即便朱右曾的考證不對,按照後一説也可以證明《逸周書》的年代與古文家説相合。董作賓先生《殷曆谱》説:“據本譜之考定,文王在位五十年而崩,武王即位當西元前一一二二年己卯,殷帝辛之五十三祀也。文王二十三祀,當帝辛二十六祀。”(36)董作賓: 《殷曆譜》,頁150。按董氏推算武王即位之年已經出現錯誤,故此處推算亦不可據,因爲“西元前一一二二年己卯”乃文王受命之年。
2. 《小開解》:“維三十有五祀,王念曰: 多□,正月丙子拜望,食無時……”按文王三十五祀今文在前1130年,是年正月庚辰朔,不合。若依古文即前1132年,正月壬戌朔,丙子十五,正合月望之義,舊注本不誤。黄懷信《逸周書校補注譯》以爲古無拜望月之事,釋爲拜見,(37)黄懷信: 《逸周書校補注譯》,西安: 三秦出版社2006年版,頁102。恐非是。董作賓推算爲“文王三十五祀,當帝辛之三十八祀,西元前1137年甲子”,(38)董作賓: 《殷曆譜》,頁150。是年殷正月十七日丙子,十六日乙亥有月全食,時辰在周酆京夜十時半,(39)董作賓: 《中國古代文化的認識》,《中國現代學術經典·董作賓卷》,頁634—635。年代推算既已不確,曆日驗證偶然相合亦必有誤。
3. 《寶典解》“維王三祀二月丙辰朔”,按張表前1112年二月乙丑朔,遲了十日。今按,今文家武王克商的紀年在武王四年,《逸周書》大都爲古文家紀年,此處“維王三祀”也不例外,是古文家紀年。《酆谋解》:“維王三祀,王在酆。”亦在此年。黄懷信《逸周書校補注譯》注:“三年,灭商前一年。”(40)黄懷信: 《逸周書校補注譯》,頁145。但他未説是古文家還是今文家紀年。《新唐書·曆志》載一行引此作“维王元祀二月丙辰朔”,據此推算應爲前1114年,是今文家本。張表是年二月丁丑朔,遲了21日,蓋失閏所致。對於一行所引的《逸周書》,前人如朱右曾認爲無根據。董作賓用一行引文,推算説:“武王元祀在其即位之次年,當殷帝辛五十四祀,西元前前一一二一年,庚辰。”(41)董作賓: 《殷曆譜》,頁151。失之。
4. 《逸周書·大匡》:“惟十有三祀,王在管。管叔自作殷之監。東隅之侯,咸受賜於王。”《文政解》:“惟十有三祀,王在管,管、蔡開宗循王。”以上均爲古文家紀年,十有三祀等於今文家紀年的十一祀,亦即前1111年克商之年。西周利簋述武王征商事,在牧野之戰後,第八天即來管地。近年學者質疑“管”字的釋讀,其實于省吾先生釋讀管字無誤,按“管”又通“館”,《古本竹書紀年》説:“紂時稍大其邑,南距朝歌,北據邯鄲及沙丘,皆爲離宫别館。”管,蓋爲朝歌附近離宫别館一處建築群而得稱,該地建有商朝宗廟。《逸周書·克殷解》:“立王子武庚,命管叔相。乃命召公釋箕子之囚,命畢公、衛叔出百姓之囚。乃命南宫忽振鹿臺之財、巨橋之粟。乃命南宫伯達、史佚遷九鼎三巫。乃命閎夭封比干之墓。乃命宗祀崇賓,饗禱之于軍。乃班。”商朝帝辛時期,管是要地,在管地的活動很多;武王克商後,在管地多有部署,金文與文獻可以互證。管無疑就在朝歌一帶。順便提一下,《尚書·洪範》的“惟十有三祀”是今文家説,是在前1109年,與此不是同一年,不可混同。
由此可以看出,周曆在西伯(文王)時期誤差很少,基本上是合天的曆法。還應該説明,前人如董作賓先生也曾編曆譜,作過此種驗證工作,但出現的問題不少,由于他在年代學文獻考證上有失誤,如認爲帝辛在位有五十二年之多,其他各王有的年代也不確當,因而推算年代不合,加之不清楚今文、古文年代的區别,凡此不能不影響他驗證的準確。當然我們也不能苛求前賢,因爲一般説來前人也無法超越時代,畢竟當時有一些客觀條件尚不具備。
參考文獻
董作賓: 《西周年曆譜》(簡稱董譜),《董作賓先生全集》甲編第一册(簡稱《甲編一》),臺北: 藝文印書館1978年版。
張培瑜: 《中國先秦史曆表》(簡稱張表),濟南: 齊魯書社1987年版。
丁山: 《商周史料考證》,中華書局1988年版。
李學勤: 《夏商周年代學札記》,瀋陽: 遼寧大學出版社1999年版。
張培瑜: 《試論殷代曆法的月與月相的關係》,《南京大學學報》(哲社版)1984年第1期。
温天河: 《島邦男氏“帝辛三十三年殷亡説”及其商榷》,《食貨月刊》復刊第7卷5期,1977年。
何幼琦: 《帝乙、帝辛紀年和征夷方的年代》,《殷都學刊》1990年第3期。
勞榦: 《從甲午月食討論殷週年代的關鍵問題》,《中研院歷史語言研究所集刊》第64本3分,《芮逸夫、高去尋兩先生紀念論文集》,1993年。
謝元震: 《殷商帝乙帝辛在位年代》,《中國史研究》1996年第2期。
張培瑜: 《武丁、殷商的可能年代》,《考古與文物》1999年第4期。