У меня есть файл cfm ColdFusion, который обменивается данными с базой данных сервера sql. Прямо сейчас, если что-то пойдет не так с соединением с базой данных, оно вызывает страницу с ошибкой, создаваемую ColdFusion. Есть ли способ, которым я могу поймать ошибки и отобразить сообщение типа «Сервер базы данных временно, пожалуйста, вернитесь позже»? TedОшибки базы данных ошибок в ColdFusion
1
A
ответ
6
Вы можете использовать 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>
Вы можете также использовать cferror тег для глобальной обработки (положить это в Application.cfm) исключение:
<cferror
type="exception"
exception="database"
template="myFriendlyDatabaseErrorTemplate.cfm">
Вы можете также использовать метод OnError в Application.cfc, который также будет (например, 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>
+0
Привет, Спасибо за помощь ! –
Поскольку вы сейчас используете этот великий язык .. снова «ColdFusion» является одним словом, а не два;) – Leigh