当前的位置 >> 网站首页 >> 作家与作品
      风雨天一阁
      发布日期:2024-06-20

      不知怎么回事,天一阁对于我,一直有一种奇怪的阻隔。

      照理,我是读书人,它是藏书楼,我是宁波人,它在宁波城,早该频频往访的了,然而却一直不得其门而入。1976年春到宁波养病,住在我早年的老师盛钟健先生家。盛先生一直有心设法把我弄到天一阁里去看一段时间书,但按当时的情景,手续颇烦人,我也没有读书的心绪,只得作罢。后来情况好了,宁波市文化艺术界的朋友们总要定期邀我去讲点课,但我每次都是来去匆匆,始终没有去过天一阁。

      是啊,现在大批到宁波作几日游的普通上海市民回来都在大谈天一阁,而我这个经常钻研天一阁藏本重印书籍、对天一阁的变迁历史相当熟悉的人却从未进过阁,实在说不过去。直到1990年8月我再一次到宁波讲课,终于在讲完的那一天支支吾吾地向主人提出了这个要求。主人是文化局副局长裴明海先生,天一阁正属他管辖,在对我的这个可怕缺漏大吃一惊之余立即决定,明天由他亲自陪同,进天一阁。

      但是,就在这天晚上,台风袭来,暴雨如注,整个城市都在柔弱地颤抖。第二天上午如约来到天一阁时,只见大门内的前后天井、整个院子全是一片汪洋。打落的树叶在水面上翻卷,重重砖墙间透出湿冷冷的阴气。看门的老人没想到文化局长会在这样的天气陪着客人前来,慌忙从清洁工人那里借来半高统雨鞋要我们穿上,还递来两把雨伞。但是,院子里积水太深,才下脚,鞋统已经进水,唯一的办法是干脆脱掉鞋子,挽起裤管蹚水进去。本来浑身早已被风雨搅得冷飕飕的了,赤脚进水立即通体一阵寒噤。就这样,我和裴明海先生相扶相持,高一脚低一脚地向藏书楼走去。天一阁,我要靠近前去怎么这样难呢?明明已经到了跟前,还把风雨大水作为最后一道屏障来阻拦。我知道,历史上的学者要进天一阁看书是难乎其难的事,或许,我今天进天一阁也要在天帝的主持下举行一个狞厉的仪式?

      天一阁之所以叫天一阁,是创办人取《易经》中“天一生水”之义,想借水防火,来免去历来藏书者最大的忧患火灾。今天初次相见,上天分明将“天一生水”的奥义活生生地演绎给了我看,同时又逼迫我以最虔诚的形貌投入这个仪式,剥除斯文,剥除参观式的悠闲,甚至不让穿着鞋子踏入圣殿,背躬曲膝、哆哆嗦嗦地来到跟前。今天这里再也没有其他参观者,这一切岂不是一种超乎寻常的安排?

      不错,它只是一个藏书楼,但它实际上已成为一种极端艰难、又极端悲怆的文化奇迹。

      中华民族作为世界上最早进入文明的人种之一,让人惊叹地创造了独特而美丽的象形文字,创造简帛,然后又顺理成章地创造了纸和印刷术。这一切,本该迅速地催发出一个书籍海洋,把壮阔的华夏文明播扬翻腾。但是,野蛮的战火几乎不间断地在焚烧着脆薄的纸页,无边的愚昧更是在时时吞食着易碎的智慧。一个为写书、印书创造好了一切条件的民族竟不能堂而皇之地拥有和保存很多书,书籍在这块土地上始终是一种珍罕而又陌生的怪物,于是,这个民族的精神天地长期处于散乱状态和自发状态,它常常不知自己从哪里来,到哪里去,自己究竟是谁,要干什么。

      只要是智者,就会为这个民族产生一种对书的企盼。他们懂得,只有书籍,才能让这么悠远的历史连成缆索,才能让这么庞大的人种产生凝聚,才能让这么广阔的土地长存文明的火种。很有一些文人学士终年辛劳地以抄书、藏书为业,但清苦的读书人到底能藏多少书,而这些书又何以保证历几代而不流散呢?“君子之泽,五世而斩”,功名资财、良田巍楼尚且如此,更遑论区区几箱书?宫廷当然有不少书,但在清代之前,大多构不成整体文化意义上的藏书规格,又每每毁于改朝换代之际,是不能够去指望的。鉴于这种种情况,历史只能把藏书的事业托付给一些非常特殊的人物了。这种人必得长期为官,有足够的资财可以搜集书籍;这种人为官又最好各地迁移,使他们有可能搜集到散落四处的版本;这种人必须有极高的文化素养,对各种书籍的价值有迅捷的敏感;这种人必须有清晰的管理头脑,从建藏书楼到设计书橱都有精明的考虑,从借阅规则到防火措施都有周密的安排;这种人还必须有超越时间的深入谋划,对如何使自己的后代把藏书保存下去有预先的构想。当这些苛刻的条件全都集于一身时,他才有可能成为古代中国的一名藏书家。

      这样的藏书家委实也是出过一些的,但没过几代,他们的事业都相继萎谢。他们的名字可以写出长长一串,但他们的藏书却早已流散得一本不剩了。那么,这些名字也就组合成了一种没有成果的努力,一种似乎实现过而最终还是未能实现的悲剧性愿望。

      能不能再出一个人呢,哪怕仅仅是一个,他可以把上述种种苛刻的条件提升得更加苛刻,他可以把管理、保存、继承诸项关节琢磨到极端,让偌大的中国留下一座藏书楼,一座,只是一座!上天,可怜可怜中国和中国文化吧。

      这个人终于有了,他便是天一阁的创建人范钦。

      清代乾嘉时期的学者阮元说:“范氏天一阁,自明至今数百年,海内藏书家,唯此岿然独存。”

      这就是说,自明至清数百年广阔的中国文化界所留下的一部分书籍文明,终于找到了一所可以稍加归拢的房子。

      明以前的漫长历史,不去说它了,明以后没有被归拢的书籍,也不去说它了,我们只向这座房子叩个头致谢吧,感谢它为我们民族断残零落的精神史,提供了一个小小的栖脚处。

      范钦是明代嘉靖年间人,自二十七岁考中进士后开始在全国各地做官,到的地方很多,北至陕西、河南、南至两广、云南,东至福建、江西,都有他的宦迹。最后做到兵部右侍郎,官职不算小了。这就为他的藏书提供了充裕的财力基础和搜罗空间。在文化资料十分散乱又没有在这方面建立起像样的文化市场的当时,官职本身也是搜集书籍的重要依凭。他每到一地做官,总是非常留意搜集当地的公私刻本,特别是搜集其他藏书家不甚重视、或无力获得的各种地方志、正书、实录以及历科试士录,明代各地仕人刻印的诗文集,本是很容易成为过眼烟云的东西,他也搜得不少。这一切,光有搜集的热心和资财就不够了。乍一看,他是在公务之暇把玩书籍,而事实上他已经把人生的第一要务看成是搜集图书,做官倒成了业余,或者说,成了他搜集图书的必要手段。他内心隐潜着的轻重判断是这样,历史的宏观裁断也是这样。好像历史要当时的中国出一个藏书家,于是把他放在一个颠簸九州的官位上来成全他。一天公务,也许是审理了一宗大案,也许是弹劾了一名贪官,也许是调停了几处官场恩怨,也许是理顺了几项财政关系,衙堂威仪,朝野声誉,不一而足。然而他知道,这一切的重量加在一起也比不过傍晚时分差役递上的那个薄薄的蓝布包袱,那里边几册按他的意思搜集来的旧书,又要汇入行箧。他那小心翼翼翻动书页的声音,比开道的鸣锣和吆喝都要响亮。

      范钦的选择,碰撞到了我近年来特别关心的一个命题:基于健全人格的文化良知,或者倒过来说,基于文化良知的健全人格。没有这种东西,他就不可能如此矢志不移,轻常人之所重,重常人之所轻。他曾毫不客气地顶撞过当时在朝廷权势极盛的皇亲郭勋,因而遭到廷杖之罚,并下过监狱。后来在仕途上仍然耿直不阿,公然冒犯权奸严氏家族,严世藩想加害于他,而其父严嵩却说:“范钦是连郭勋都敢顶撞的人,你参了他的官,反而会让他更出名。”结果严氏家族竟奈何范钦不得。

      我们从这些事情可以看到,一个成功的藏家在人格上至少是一个强健的人。

      这一点我们不妨把范钦和他身边的其他藏书家作个比较。与范钦很要好的书法大师丰坊也是一个藏书家,他的字毫无疑问要比范钦写得好,一代书家董其昌曾非常钦佩地把他与文徵明并列,说他们两人是“墨池董狐”,可见在整个中国古代书法史上,他也是一个耀眼的星座。他在其他不少方面的学问也超过范钦,例如他的专著《五经世学》,就未必是范钦写得出来的。但是,作为一个地道的学者艺术家,他太激动,太天真,太脱世,太不考虑前后左右,太随心所欲。起先他也曾狠下一条心变卖掉家里的千亩良田来换取书法名帖和其他书籍,在范钦的天一阁还未建立的时候他已构成了相当的藏书规模,但他实在不懂人情世故,不懂口口声声尊他为师的门生们也可能是巧取豪夺之辈,更不懂得藏书楼防火的技术,结果他的全部藏书到他晚年已有十分之六被人拿走,又有一大部分毁于火灾,最后只得把剩余的书籍转售给范钦。

      范钦既没有丰坊的艺术才华,也没有丰坊的人格缺陷,因此,他以一种冷峻的理性提炼了丰坊也会有的文化良知,使之变成一种清醒的社会行为。相比之下,他的社会人格比较强健,只有这种人才能把文化事业管理起来。太纯粹的艺术家或学者在社会人格上大多缺少旋转力,是办不好这种事情的。

      另一位可以与范钦构成对比的藏书家正是他的侄子范大澈。范大澈从小受叔父影响,不少方面很像范钦,例如他为官很有能力,多次出使国外,而内心又对书籍有一种强烈的癖好;他学问不错,对书籍也有文化价值上的裁断力,因此曾被他搜集到一些重要珍本。他藏书,既有叔父的正面感染,也有叔父的反面刺激。据说有一次他向范钦借书而范钦不甚爽快,便立志自建藏书楼来悄悄与叔父争胜,历数年努力而楼成,他就经常邀请叔父前去作客,还故意把一些珍贵秘本放在案上任叔父随意取阅。遇到这种情况,范钦总是淡淡的一笑而已。在这里,叔侄两位藏书家的差别就看出来了。侄子虽然把事情也搞得很有样子,但背后却隐藏着一个意气性的动力,这未免有点小家子气了。在这种情况下,他的终极性目标是很有限的,只要把楼建成,再搜集到叔父所没有的版本,他就会欣然自慰。结果,这位作为后辈新建的藏书楼只延续几代就合乎逻辑地流散了,而天一阁却以一种怪异的力度屹立着。

      实际上,这也就是范钦身上所支撑着的一种超越意气、超越嗜好、超越才情,因此也超越时间的意志力。这种意志力在很长时间内的表现常常让人感到过于冷漠、严峻,甚至不近人情,但天一阁就是靠着它延续至今的。

      藏书家遇到的真正麻烦大多是在身后,因此,范钦面临的问题是如何把自己的意志力变成一种不可动摇的家族遗传。不妨说,天一阁真正堪称悲壮的历史,开始于范钦死后。

      我不知道保住这座楼的使命对范氏家族来说算是一种荣幸,还是一场延绵数百年的苦役。

      活到八十高龄的范钦终于走到了生命尽头,他把大儿子和二儿媳妇(二儿子已亡故)叫到跟前,安排遗产继承事项。

      老人在弥留之际还给后代出了一个难题,他们遗产分成两份,一份是万两白银,一份是一楼藏书,让两房挑选。

      这是一种非常奇怪的遗产分割法。万两白银立即可以享用,而一楼藏书则除了沉重的负担没有任何享用的可能,因为范钦本身一辈子的举止早已告示后代,藏书绝对不能有一本变卖,而要保存好这些藏书每年又要支付一大笔费用。为什么他不把保存藏书的责任和万两白银都一分为二让两房一起来领受呢?为什么他要把权利和义务分割得如此彻底要后代选择呢?

      我坚信这种遗产分割法老人已经反复考虑了几十年。实际上这是他自己给自己出的难题:要么后代中有人义无反顾、别无他求地承担艰苦的藏书事业,要么只能让这一切都随自己的生命烟消云散!他故意让遗嘱变得不近情理,让立志继承藏书的一房完全无利可图。因为他知道这时候只要有一丝掺假,再隔几代,假的成分会成倍地扩大,他也会重蹈其他藏书家的覆辙。他没有丝毫意思想讥诮或鄙薄要继承万两白银的那一房,诚实地承认自己没有承接这项历史性苦役的信心,总比在老人病榻前不太诚实的信誓旦旦好得多。但是,毫无疑问,范钦更希望在告别人世的最后一刻听到自己企盼了几十年的声音。他对死神并不恐惧,此刻却不无恐惧地直视着后辈的眼睛。

      大儿子范大冲立即开口,他愿意继承藏书楼,并决定拨出自己的部分良田,以田租充当藏书楼的保养费用。

      就这样,一场没完没了接力赛开始了。多少年后,范大冲也会有遗嘱,范大冲的儿子又会有遗嘱……后一代的遗嘱比前一代还要严格。藏书的原始动机越来越远,而家族的繁衍却越来越大,怎么能使后代众多支脉的范氏世谱中每一家每一房都严格地恪守先祖范钦的规范呢?这实在是一个值得我们一再品味的艰难课题。在当时,一切有历史跨度的文化事业只能交付给家族传代系列,但家族传代本身却是一种不断分裂、异化、自立的生命过程。让后代的后代接受一个需要终生投入的强硬指令,是十分违背生命的自在状态的;让几百年之后的后裔不经自身体验就来沿袭几百年前某位祖先的生命冲动,也难免有许多憋气的地方。不难想象,天一阁藏书楼对于许多范氏后代来说几乎成了一个宗教式的朝拜对象,只知要诚惶诚恐地维护和保存,却不知是为什么。按照今天的思维习惯,人们会在高度评价范氏家族的丰功伟绩之余随之揣想他们代代相传的文化自觉,其实我可肯定此间埋藏着许多难以言状的心理悲剧和家族纷争,这个在藏书楼下生活了几百年的家族非常值得同情。

      后代子孙免不了会产生一种好奇,楼上究竟是什么样的呢?到底有哪些书,能不能借来看看?亲戚朋友更会频频相问,作为你们家族世代供奉的这个秘府,能不能让我们看上一眼呢?

      范钦和他的继承者们早就预料到这种可能,而且预料藏书楼就会因这种点滴可能而崩坍,因而已经预防在先。他们给家族制定了一个严格的处罚规则,处罚内容是当时视为最大屈辱的不予参加祭祖大典,因为这种处罚意味着在家族血统关系上亮出了“黄牌”,比杖责鞭笞之类还要严重。处罚规则标明:子孙无故开门入阁者,罚不与祭三次;私领亲友入阁及擅开书橱者,罚不与祭一年;擅将藏书借出外房及他姓者,罚不与祭三年,因而典押事故者,除追惩外,永行摈逐,不得与祭。

      在此,必须讲到那个我每次想起都很难过的事件了。嘉庆年间,宁波知府丘铁卿的内侄女钱绣芸是一个酷爱诗书的姑娘,一心想要登天一阁读点书,竟要知府作媒嫁给了范家。

      现代社会学家也许会责问钱姑娘你究竟是嫁给书还是嫁给人,但在我看来,她在婚姻很不自由的时代既不看重钱也不看重势,只想借着婚配来多看一点书,总还是非常令人感动的。但她万万没有想到,当自己成了范家媳妇之后还是不能登楼,一种说法是族规禁止妇女登楼,另一种说法是她所嫁的那一房范家后裔在当时已属于旁支。反正钱绣芸没有看到天一阁的任何一本书,郁郁而终。今天,当我抬起头来仰望天一阁这栋楼的时候,首先想到的是钱绣芸那忧郁的目光。我几乎觉得这里可出一个文学作品了,不是写一般的婚姻悲剧,而是写在那很少有人文主义气息的中国封建社会里,一个姑娘的生命如何强韧而又脆弱地与自己的文化渴求周旋。

      从范氏家族的立场来看,不准登楼,不准看书,委实也出于无奈。只要开放一条小缝,终会裂成大隙。但是,永远地不准登楼,不准看书,这座藏书楼存在于世的意义又何在呢?这个问题,每每使范氏家族陷入困惑。

      范氏家族规定,不管家族繁衍到何等程度,开阁门必得各房一致同意。阁门的钥匙和书橱的钥匙由各房分别掌管,组成一环也不可缺少的连环,如果有一房不到是无法接触到任何藏书的。既然每房都能有效地行使否决权,久而久之,每房也都产生了终极性的思考:被我们层层叠叠堵住了门的天一阁究竟是干什么用的?

      就在这时,传来消息,大学者黄宗羲先生要想登楼看书!

      这对范家各房无疑是一个巨大的震撼。黄宗羲是“吾乡”余姚人,与范氏家族没有任何血缘关系,照理是严禁登楼的,但无论如何他是靠自己的人品、气节、学问而受到全国思想学术界深深钦佩的巨人,范氏各房也早有所闻。尽管当时的信息传播手段非常落后,但由于黄宗羲的行为举止实在是奇崛响亮,一次次在朝野之间造成非凡的轰动效应。他的父亲本是明末东林党重要人物,被魏忠贤宦官集团所杀,后来宦官集团受审,十九岁的黄宗羲在廷质时竟义愤填膺地锥刺和痛殴漏网余党,后又追杀凶手,警告阮大铖,一时大快人心。清兵南下时他与两个弟弟在家乡组织数百人的子弟兵“世忠营”英勇抗清,抗清失败后便潜心学术,边著述边讲学,把民族道义、人格道德溶化在学问中启世迪人,成为中国古代学术天域中第一流的思想学和历史学家。他在治学过程中已经到绍兴钮氏“世学楼”和祁氏“淡生堂”去读过书,现在终于想来叩天一阁之门了。他深知范氏家族的森严规矩,但他还是来了,时间是康熙十二年,即1673年。

      出乎意外,范氏家族的各房竟一致同意黄宗羲先生登楼,而且允许他细细地阅读楼上的全部藏书。这件事,我一直看成是范氏家族文化品格的一个验证。他们是藏书家,本身在思想学术界和社会政治领域都没有太高的地位,但他们毕竟为一个人而不是为其他人,交出他们珍藏严守着的全部钥匙。

      这里有选择,有裁断,有一个庞大的藏书世家的人格闪耀。黄宗羲先生长衣布鞋,悄然登楼了。铜锁在一具具打开,1673年成为天一阁历史上特别有光彩的一年。

      黄宗羲在天一阁翻阅了全部藏书,把其中流通未广者编为书目,并另撰《天一阁藏书记》留世。由此,这座藏书楼便与一位大学者的人格连结起来了。从此以后,天一阁有了一条可以向真正的大学者开放的新规矩,但这条规矩的

      执行还是十分苛严,在此后近二百年的时间内,获准登楼的大学者也仅有十余名,他们的名字,都是上得了中国文化史的。

      这样一来,天一阁终于显现本身的存在意义,尽管显现的机会是那样小。封建家族的血缘继承关系和社会学术界的整体需求产生了尖锐的矛盾,藏书世家面临着无可调和的两难境地:要么深藏密裹使之留存,要么发挥社会价值而任之耗散。看来像天一阁那样经过最严格的选择作极有限的开放是一个没办法中的办法。但是,如此严格地在全国学术界进行选择,已远远超出了一个家族的职能范畴了。

      直到乾隆决定编纂《四库全书》,这个矛盾的解决才出现了一些新的走向。乾隆谕旨各省采访遗书,要各藏书家,特别是江南的藏书家积极献书。天一阁进呈珍贵古籍六百余种,其中有九十六种被收录在《四库全书》中,有三百七十余种列入存目。乾隆非常感谢天一阁的贡献,多次褒扬奖赐,并授意新建的南北主要藏书楼都仿照天一阁格局营建。

      天一阁因此而大出其名,尽管上献的书籍大多数没有发还,但在国家级的“百科全书”中,在钦定的藏书楼中,都有了它的生命。我曾看到好些著作文章中称乾隆下令天一阁为《四库全书》献书是天一阁的一大浩劫,颇觉言之有过。藏书的意义最终还是要让它广泛流播,“藏”本身不应成为终极的目的。连堂堂皇家编书都不得不大幅度地动用天一阁的珍藏,家族性的收藏变成了一种行政性的播扬,这证明天一阁获得了大成功,范钦获得了大成功。

      天一阁终于走到了中国近代。什么事情一到中国近代总会变得怪异起来,这座古老的藏书楼开始了自己新的历险。

      先是太平军进攻宁波时当地小偷趁乱拆墙偷书,然后当废纸论斤卖给造纸作坊。曾有一人出高价从作坊买去一批,却又遭大火焚毁。这就成了天一阁此后命运的先兆,它现在遇到的问题已不是让某位学者上楼的问题了,竟然是窃贼和偷儿成了它最大的对手。

      1914年,一个叫薛继渭的偷儿奇迹般地潜入书楼,白天无声无息,晚上动手偷书,每日只以所带枣子充饥,东墙外的河上,有小船接运所偷书籍。这一次几乎把天一阁的一半珍贵书籍给偷走了,它们渐渐出现在上海的书铺里。继渭的这次偷窃与太平天国时的那些小偷不同,不仅数量巨大、操作系统,而且最终与上海的书铺挂上了钩,显然是受到书商的指使。近代都市的书商用这种办法来侵吞一个古老的藏书楼,我总觉得其中蕴含着某种象征意义。把保护藏书楼的种种措施都想到了家的范钦确实没有在防盗的问题上多动脑筋,因为这对在当时这样一个家族的院落来说构不成一种重大威胁。但是,这正像范钦想象不到会有一个近代降临,想象不到近代市场上那些商人在资本的原始积累时期会采取什么手段。

      一架架的书橱空了。钱绣芸小姐哀怨地仰望终身而未能上的楼板,黄宗羲先生小心翼翼地踩踏过的楼板,现在只留下偷儿吐出的一大堆枣核在上面。

      当时主持商务印书馆的张元济先生听说天一阁遭此浩劫,并得知有些书商正准备把天一阁藏本卖给外国人,便立即拨巨资抢救,保存于东方图书馆的“涵芬楼”里。涵芬楼因有天一阁藏书的润泽而享誉文化界,当代不少文化大家都在那里汲取过营养。但是,如所周知,它最终竟又全部焚毁于日本侵略军的炸弹之下。

      这当然更不是数百年前的范钦先生所能预料的了。他“天一生水”的防火秘咒也终于失效。

      然而毫无疑问,范钦和他后代的文化良知在现代并没有完全失去光亮。除了张元济先生外,还有大量的热心人想怒力保护好天一阁这座“危楼”,使它不要全然成为废墟。这在现代无疑已成为一个社会性的工程,靠着一家一族的力量已无济于事。幸好,本世纪三十年代、五十年代、六十年代直至八十年代,天一阁一次次被大规模地修缮和充实着,现在已成为重点文物保护单位,也是人们游览宁波时大多要去访谒的一个处所。天一阁的藏书还有待于整理,但在文化沟通便捷的现代,它的主要意义已不是以书籍的实际内容给社会以知识,而是作为一种古典文化事业的象征存在着,让人联想到中国文化保存和流传的艰辛历程,联想到一个古老民族对于文化的渴求是何等悲怆和神圣。

      我们这些人,在生命本质上无疑属于现代文化的创造者,但从遗传因子上考察又无可逃遁地是民族传统文化的孑遗,因此或多或少也是天一阁传代系统的繁衍者,尽管在范氏家族看来只属于“他姓”。登天一阁楼梯时我的脚步非常缓慢,我不断地问自己:你来了吗?你是哪一代的中国书生?

      很少有其他参观处所能使我像在这里一样心情既沉重又宁静。阁中一位年老的版本学家颤巍巍地捧出两个书函,让我翻阅明刻本,我翻了一部登科录,一部上海志,深深感到,如果没有这样的孤本,中国历史的许多重要侧面将杳无可寻。

      由此想到,保存这些历史的天一阁本身的历史,是否也有待于进一步发掘呢?

      裴明海先生递给我一本徐季子、郑学溥、袁元龙先生写的《宁波史话》的小册子,内中有一篇介绍了天一阁的变迁,写得扎实清晰,使我知道了不少我原先不知道的史实。但在我看来,天一阁的历史是足以写一部宏伟的长篇史诗的。我们的文学艺术家什么时候能把范氏家族和其他许多家族数百年来的灵魂史袒示给现代世界呢?

      余秋雨

      —— 版权所有:才子曰 ——
      关于我们 | 联系方式 | 专题活动 | 最新更新 | 公众号 | 手机版

      备案号:津ICP备2023009488号
      基本 文件 流程 错误 SQL 调试
      1. 请求信息 : 2025-12-21 22:03:43 HTTP/1.1 GET : http://www.caiziyue.com/index/news/article.html?id=1296
      2. 运行时间 : 0.143413s [ 吞吐率:6.97req/s ] 内存消耗:4,685.23kb 文件加载:150
      3. 缓存信息 : 0 reads,0 writes
      4. 会话信息 : SESSION_ID=763ec1029ba894948ff43d25726ae132
      1. /www/wwwroot/caiziyue/index.php ( 0.79 KB )
      2. /www/wwwroot/caiziyue/vendor/autoload.php ( 0.73 KB )
      3. /www/wwwroot/caiziyue/vendor/composer/autoload_real.php ( 1.63 KB )
      4. /www/wwwroot/caiziyue/vendor/composer/platform_check.php ( 0.90 KB )
      5. /www/wwwroot/caiziyue/vendor/composer/ClassLoader.php ( 15.99 KB )
      6. /www/wwwroot/caiziyue/vendor/composer/autoload_static.php ( 5.14 KB )
      7. /www/wwwroot/caiziyue/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
      8. /www/wwwroot/caiziyue/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
      9. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
      10. /www/wwwroot/caiziyue/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
      11. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
      12. /www/wwwroot/caiziyue/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
      13. /www/wwwroot/caiziyue/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
      14. /www/wwwroot/caiziyue/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
      15. /www/wwwroot/caiziyue/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
      16. /www/wwwroot/caiziyue/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.60 KB )
      17. /www/wwwroot/caiziyue/vendor/topthink/think-captcha/src/helper.php ( 1.37 KB )
      18. /www/wwwroot/caiziyue/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
      19. /www/wwwroot/caiziyue/vendor/symfony/var-dumper/VarDumper.php ( 3.96 KB )
      20. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
      21. /www/wwwroot/caiziyue/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
      22. /www/wwwroot/caiziyue/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
      23. /www/wwwroot/caiziyue/app/provider.php ( 0.19 KB )
      24. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
      25. /www/wwwroot/caiziyue/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
      26. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
      27. /www/wwwroot/caiziyue/app/common.php ( 10.61 KB )
      28. /www/wwwroot/caiziyue/vendor/topthink/framework/src/helper.php ( 18.78 KB )
      29. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
      30. /www/wwwroot/caiziyue/config/app.php ( 0.95 KB )
      31. /www/wwwroot/caiziyue/config/cache.php ( 0.78 KB )
      32. /www/wwwroot/caiziyue/config/captcha.php ( 1.13 KB )
      33. /www/wwwroot/caiziyue/config/console.php ( 0.23 KB )
      34. /www/wwwroot/caiziyue/config/cookie.php ( 0.56 KB )
      35. /www/wwwroot/caiziyue/config/database.php ( 2.18 KB )
      36. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
      37. /www/wwwroot/caiziyue/config/filesystem.php ( 0.61 KB )
      38. /www/wwwroot/caiziyue/config/lang.php ( 0.91 KB )
      39. /www/wwwroot/caiziyue/config/log.php ( 1.35 KB )
      40. /www/wwwroot/caiziyue/config/middleware.php ( 0.19 KB )
      41. /www/wwwroot/caiziyue/config/route.php ( 1.89 KB )
      42. /www/wwwroot/caiziyue/config/session.php ( 0.57 KB )
      43. /www/wwwroot/caiziyue/config/trace.php ( 0.34 KB )
      44. /www/wwwroot/caiziyue/config/view.php ( 0.82 KB )
      45. /www/wwwroot/caiziyue/app/event.php ( 0.25 KB )
      46. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
      47. /www/wwwroot/caiziyue/app/service.php ( 0.13 KB )
      48. /www/wwwroot/caiziyue/app/AppService.php ( 0.26 KB )
      49. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
      50. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
      51. /www/wwwroot/caiziyue/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
      52. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
      53. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
      54. /www/wwwroot/caiziyue/vendor/services.php ( 0.21 KB )
      55. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
      56. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
      57. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
      58. /www/wwwroot/caiziyue/vendor/topthink/think-captcha/src/CaptchaService.php ( 0.52 KB )
      59. /www/wwwroot/caiziyue/vendor/topthink/think-multi-app/src/Service.php ( 1.08 KB )
      60. /www/wwwroot/caiziyue/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
      61. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
      62. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
      63. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
      64. /www/wwwroot/caiziyue/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
      65. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
      66. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
      67. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
      68. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
      69. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
      70. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
      71. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
      72. /www/wwwroot/caiziyue/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
      73. /www/wwwroot/caiziyue/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
      74. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
      75. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
      76. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
      77. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
      78. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
      79. /www/wwwroot/caiziyue/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
      80. /www/wwwroot/caiziyue/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
      81. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
      82. /www/wwwroot/caiziyue/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
      83. /www/wwwroot/caiziyue/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
      84. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
      85. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
      86. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
      87. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Console.php ( 22.89 KB )
      88. /www/wwwroot/caiziyue/app/Request.php ( 0.09 KB )
      89. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
      90. /www/wwwroot/caiziyue/app/middleware.php ( 0.25 KB )
      91. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
      92. /www/wwwroot/caiziyue/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
      93. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
      94. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
      95. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
      96. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
      97. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
      98. /www/wwwroot/caiziyue/vendor/topthink/think-multi-app/src/MultiApp.php ( 7.06 KB )
      99. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
      100. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
      101. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
      102. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
      103. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
      104. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
      105. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
      106. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
      107. /www/wwwroot/caiziyue/app/index/controller/News.php ( 20.94 KB )
      108. /www/wwwroot/caiziyue/app/index/controller/Base.php ( 5.07 KB )
      109. /www/wwwroot/caiziyue/app/BaseController.php ( 2.03 KB )
      110. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/facade/Request.php ( 9.20 KB )
      111. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
      112. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
      113. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/facade/Cookie.php ( 1.48 KB )
      114. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
      115. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
      116. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
      117. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
      118. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
      119. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
      120. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
      121. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
      122. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
      123. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
      124. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
      125. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
      126. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
      127. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
      128. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
      129. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
      130. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
      131. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
      132. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
      133. /www/wwwroot/caiziyue/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
      134. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
      135. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
      136. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
      137. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
      138. /www/wwwroot/caiziyue/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
      139. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
      140. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
      141. /www/wwwroot/caiziyue/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
      142. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
      143. /www/wwwroot/caiziyue/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
      144. /www/wwwroot/caiziyue/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
      145. /www/wwwroot/caiziyue/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
      146. /www/wwwroot/caiziyue/runtime/index/temp/b16ba22d0070970d5f2953d968a1f88f.php ( 67.57 KB )
      147. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
      148. /www/wwwroot/caiziyue/vendor/topthink/think-multi-app/src/Url.php ( 7.52 KB )
      149. /www/wwwroot/caiziyue/vendor/topthink/framework/src/think/route/Url.php ( 14.07 KB )
      150. /www/wwwroot/caiziyue/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
      1. CONNECT:[ UseTime:0.000907s ] mysql:host=127.0.0.1;port=3306;dbname=www_caiziyue_com;charset=utf8
      2. SHOW FULL COLUMNS FROM `qing_styles` [ RunTime:0.001828s ]
      3. SELECT * FROM `qing_styles` WHERE `etitle` = 'head' LIMIT 1 [ RunTime:0.001081s ]
      4. SHOW FULL COLUMNS FROM `qing_site_styles` [ RunTime:0.001159s ]
      5. SELECT * FROM `qing_site_styles` WHERE `id` = 1 LIMIT 1 [ RunTime:0.001491s ]
      6. SHOW FULL COLUMNS FROM `qing_category` [ RunTime:0.001240s ]
      7. SELECT * FROM `qing_category` WHERE `parent_id` = 0 AND `catetype` = 0 [ RunTime:0.000794s ]
      8. SELECT * FROM `qing_category` WHERE `parent_id` = 76 AND `status` = 1 ORDER BY `listorder` ASC [ RunTime:0.001089s ]
      9. SELECT * FROM `qing_category` WHERE `parent_id` = 77 AND `status` = 1 ORDER BY `listorder` ASC [ RunTime:0.000962s ]
      10. SELECT * FROM `qing_category` WHERE `parent_id` = 89 AND `status` = 1 ORDER BY `listorder` ASC [ RunTime:0.000895s ]
      11. SELECT * FROM `qing_category` WHERE `parent_id` = 95 AND `status` = 1 ORDER BY `listorder` ASC [ RunTime:0.000838s ]
      12. SELECT * FROM `qing_category` WHERE `parent_id` = 99 AND `status` = 1 ORDER BY `listorder` ASC [ RunTime:0.001055s ]
      13. SHOW FULL COLUMNS FROM `qing_nav` [ RunTime:0.001100s ]
      14. SELECT * FROM `qing_nav` WHERE `status` = 1 [ RunTime:0.000565s ]
      15. SHOW FULL COLUMNS FROM `qing_archives` [ RunTime:0.001381s ]
      16. SELECT * FROM `qing_archives` WHERE `id` = 1296 LIMIT 1 [ RunTime:0.001041s ]
      17. SHOW FULL COLUMNS FROM `qing_user` [ RunTime:0.001083s ]
      18. SELECT * FROM `qing_user` WHERE `iuid` = 87 LIMIT 1 [ RunTime:0.000861s ]
      19. UPDATE `qing_archives` SET `click` = 3329 WHERE `id` = 1296 [ RunTime:0.002473s ]
      20. SELECT * FROM `qing_category` WHERE `id` = 93 LIMIT 1 [ RunTime:0.000733s ]
      21. SELECT * FROM `qing_category` WHERE `parent_id` = 77 ORDER BY `listorder` ASC [ RunTime:0.000851s ]
      0.148827s