Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (中文) » MobiLink - 服务器管理 » MobiLink 事件 » 编写同步脚本

 

编写用于处理错误的脚本

当 MobiLink 服务器执行同步脚本时,如果脚本中的一个操作失败,则在该脚本中将发生一个错误。对于 SQL 脚本,DBMS 将向 MobiLink 服务器返回 SQLCODE 和错误消息,指示该错误的性质。每个统一数据库 DBMS 都有自己的一组 SQLCODE 和消息。缺省情况下,MobiLink 服务器会回退统一数据库中的事务、记录错误并中止同步。

如果调用 SQL 数据脚本的过程中出现错误,则 MobiLink 服务器会调用 handle_error 或 handle_odbc_error 事件。定义这些错误处理脚本时,MobiLink 服务器会调用它们,然后传递几个参数提供关于错误性质和上下文的信息。一个参数为一个输出值(称为 action_code),可告知 MobiLink 服务器如何响应错误。action_code 会告知 MobiLink 服务器忽略错误或中止同步。

错误处理脚本不会针对所有 SQL 错误调用。只有数据脚本才会导致调用错误处理脚本。非数据脚本中出现错误时,MobiLink 服务器会回退统一数据库中的事务、记录错误并中止同步。

如果统一 DBMS 支持异常处理,请考虑使用它代替错误处理脚本,特别是当您需要忽略数据脚本中的特定错误时。使用异常处理几乎始终比错误处理脚本表现更好。

如果 handle_error 或 handle_odbc_error 脚本本身导致错误,则 MobiLink 服务器会回退统一数据库中的事务、记录错误并中止同步。

 错误处理操作
 处理单个 SQL 语句的多个错误

请参见:


报告错误