1
我有一个与sql server数据库通信的ColdFusion cfm文件。现在,如果数据库连接出现问题,它会引发由ColdFusion生成的错误页面。有没有一种方法可以捕获错误并显示一条消息,如“数据库服务器暂时关闭,请稍后再回来”? Ted在ColdFusion中捕获错误数据库错误
我有一个与sql server数据库通信的ColdFusion cfm文件。现在,如果数据库连接出现问题,它会引发由ColdFusion生成的错误页面。有没有一种方法可以捕获错误并显示一条消息,如“数据库服务器暂时关闭,请稍后再回来”? Ted在ColdFusion中捕获错误数据库错误
您可以对单个查询使用try/catch - 这将是最细化的方法。
<cftry>
<cfquery datasource="myDSN">BROKEN SQL</cfquery>
<cfcatch type="database">
<h1>Database Offline!</h1>
<p>Sorry, the database threw an error: #cfcatch.queryError#. Try again later.</p><cfabort>
</cfcatch>
</cftry>
您也可以使用全局异常处理(把这个Application.cfm)的cferror标签:
<cferror
type="exception"
exception="database"
template="myFriendlyDatabaseErrorTemplate.cfm">
您也可以内的Application.cfc使用onError方法,这也将(如在cferror标签)捕捉请求期间发生的所有错误:
<cffunction name="onError" returnType="void">
<cfargument name="Exception" required=true/>
<cfargument name="EventName" type="String" required=true/>
<cfif arguments.Exception IS "database">
<cfinclude template="myFriendlyDatabaseErrorTemplate.cfm">
</cfif>
</cffunction>
你好,谢谢你的帮助! – 2012-02-27 13:44:19
既然你现在用这个伟大的语言..再次“ColdFusion的”是一个词,而不是两个;) – Leigh 2012-02-14 21:34:58