当前位置: 首页 > news >正文

网站建设服务器环境配置小程序哪家开发最好

网站建设服务器环境配置,小程序哪家开发最好,东莞常平常安医院,电子商务网站建设实验原理参见:Delphi 中 FireDAC 数据库连接(总览)本主题描述了如何用FireDAC处理数据库错误。一、概述EFDDBEngineException类是所有DBMS异常的基类。单个异常对象是一个数据库错误的集合,可以通过EFDDBEngineException.Errors[]属性访问…

参见:Delphi 中 FireDAC 数据库连接(总览)

本主题描述了如何用FireDAC处理数据库错误。

一、概述

EFDDBEngineException类是所有DBMS异常的基类。单个异常对象是一个数据库错误的集合,可以通过EFDDBEngineException.Errors[]属性访问,并由TFDDBError类表示。

FireDAC结合了 "个性化 "和EFDDBEngineException异常和TFDDBError错误类的统一。"个性化 "意味着一个驱动程序可以有自己的异常和错误类,其中包含DBMS的特定信息。

DBMS

Exception class

Error class

Advantage Database

FireDAC.Phys.ADSWrapper.EADSNativeException

FireDAC.Stan.Error.TFDDBError

DataSnap server

FireDAC.Phys.TDBXBase.ETDBXNativeException

FireDAC.Stan.Error.TFDDBError

dbExpress v4

FireDAC.Phys.TDBXBase.ETDBXNativeException

FireDAC.Stan.Error.TFDDBError

Firebird

FireDAC.Phys.IBWrapper.EIBNativeException

FireDAC.Phys.IBWrapper.TFDIBError

IBM DB2

FireDAC.Phys.DB2.EDB2NativeException

FireDAC.Phys.ODBCWrapper.TFDODBCNativeError

Informix

FireDAC.Phys.Infx.EInfxNativeException

FireDAC.Phys.Infx.TFDInfxError

InterBase

FireDAC.Phys.IBWrapper.EIBNativeException

FireDAC.Phys.IBWrapper.TFDIBError

Microsoft Access

FireDAC.Phys.MSAcc.EMSAccessNativeException

FireDAC.Phys.ODBCWrapper.TFDODBCNativeError

Microsoft SQL Server

FireDAC.Phys.MSSQL.EMSSQLNativeException

FireDAC.Phys.MSSQL.TFDMSSQLError

MySQL

FireDAC.Phys.MySQLWrapper.EMySQLNativeException

FireDAC.Phys.MySQLWrapper.TFDMySQLError

ODBC

FireDAC.Phys.ODBCWrapper.EODBCNativeException

FireDAC.Phys.ODBCWrapper.TFDODBCNativeError

Oracle

FireDAC.Phys.OracleWrapper.EOCINativeException

FireDAC.Phys.OracleWrapper.TOCIError

PostgreSQL

FireDAC.Phys.PGWrapper.EPgNativeException

FireDAC.Phys.PGWrapper.TFDPgError

SQLite

FireDAC.Phys.SQLiteWrapper.ESQLiteNativeException

FireDAC.Stan.Error.TFDDBError

Sybase SQL Anywhere

FireDAC.Phys.ASAWrapper.EASANativeException

FireDAC.Phys.ODBCWrapper.TFDODBCNativeError

Teradata Database

FireDAC.Phys.TData.ETDataNativeException

FireDAC.Phys.ODBCWrapper.TFDODBCNativeError

TFDDBError有一个ErrorCode属性,它是本地DBMS的错误代码。

"统一 (Unification)"意味着所有的驱动程序异常类都继承自EFDDBEngineException--一个单一的基类,包含独立于驱动程序的信息。它的Kind属性是一个独立于DBMS的错误代码。例如,处理唯一键违例的代码可能如下:

tryFDQuery1.ExecSQL('insert into MyTab(code, name) values (:code, :name)', [100, 'Tokyo']);
excepton E: EFDDBEngineException do beginif E.Kind = ekUKViolated thenShowMessage('Please enter unique value !');raise;end;
end;

二、错误信息

  1. 错误信息主要由EFDDBEngineException属性呈现。

  • Errors -- TFDDBError对象的集合。

  • ErrorCount -- Errors集合中的错误数量。

  • Kind -- 独立于DBMS的错误种类。

  • Message -- 实际的错误信息。

  1. 并由TFDDBError属性。

  • ErrorCode -- DBMS供应商特定的错误代码。

  • Kind -- DBMS独立的错误种类。

  • Message -- 错误信息。

为了简化应用程序的调试或使异常记录的信息量更大,EFDDBEngineException提供了SQL和Params属性。

另外,根据错误区域和DBMS提供高级错误信息的能力,以下的TFDDBError属性是有用的。

  • 当涉及到SQL解析错误时,CommandTextOffset返回SQL命令文本中的偏移。

  • 当涉及到违反约束条件、DB对象更改失败或其他一些错误时,ObjName属性会返回一个数据库对象的名称。

  • 当涉及到一个数组DML错误时,那么RowIndex返回错误所属的数组行索引。

三、处理异常情况

  1. 异常可以通过以下方式之一进行处理。

  • 使用try/except/end结构。这是一种标准的Delphi处理异常的方式。比如说:

FDConnection1.StartsTransaction;
tryFDQuery1.ExecSQL;FDConnection1.Commit;
excepton E: EFDDBEngineException do beginFDConnection1.Rollback;// do something hereraise;end;
end;
  • 设置TFDQuery.OnError事件处理程序。

  • 设置TFDConnection.OnError事件处理程序。这些都是处理异常记录或异常 "调整 "的好方法。比如说:

procedure TForm1.FDConnection1Error(ASender: TObject; const AInitiator: IFDStanObject;var AException: Exception);
varoExc: EFDDBEngineException;
beginif AException is EFDDBEngineException then beginoExc := EFDDBEngineException(AException);if oExc.Kind = ekRecordLocked thenoExc.Message := 'Please, try the operation later. At moment, the record is busy'else if (oExc.Kind = ekUKViolated) and SameText(oExc[0].ObjName, 'UniqueKey_Orders') thenoExc.Message := 'Please, provide the unique order information. It seems, your order was already put';end;
end;FDConnection1.OnError := FDConnection1Error;
  • 设置TFDQuery.OnExecuteError事件处理程序,用于处理Array DML的具体错误。

  • 设置TFDQuery.OnUpdateError事件处理程序,用于处理更新发布的错误。

  • 设置TFDConnection.OnLost, OnRestored, OnRecover事件处理程序,用于处理连接丢失的错误。

四、使用终端用户错误对话框

在TFDGUIxErrorDialog组件的帮助下,终端用户可以得到关于数据库返回错误的通知。

要使用该对话框,只需将该组件放在表单的某个地方。对话框钩住TApplication.OnException事件处理程序,当有一个未处理的FireDAC异常时,就会弹出对话框。在 "查询 "页面,你可以看到由异常产生的SQL命令文本。在对话框中按下Ctrl+C可以将完整的异常信息放入剪贴板。

http://www.15wanjia.com/news/157803.html

相关文章:

  • 超市的网站怎么建设廊坊网站定制开发
  • 自己建设网站需要审核吗网站开发设计步骤
  • 佳木斯万达建设网站云南昆明百度推广公司
  • 长沙公司网站高端网站建设wordpress 无刷新分页
  • 导购网站怎么建wordpress分类模板
  • mvc做网站前台代码上海公司电话
  • 网站服务器怎么建设房管局网上查询系统
  • 网站申请微信支付接口建设区服务网站
  • 建设通网站上能查到的企业河南省监理协会官方网站建设
  • 上海 网站建设公司会计专业简历制作
  • 500元做网站电子商务主要就业方向
  • 做网站用哪种代码比较好推广四川省凉亭建设工程有限公司网站
  • 学校网站建设申请wordpress cdn缓存配置
  • 建立个人网站的方法电商网站设计平台
  • 松桃和兴建设公司网站烟台网络推广公司
  • 北京网站设计研究与开发公司网站开发需要编程吗
  • 北京网站开发服务商wordpress 主题 psd
  • asp网站代码 部分封装网站创意
  • 网站空间的申请网络规划设计师课件
  • 福州服务类网站建设网站安全狗
  • 计算机专业论文网站开发56账号登录的网址
  • 网站建设怎么收费呀logo制作规范
  • 开发微信公众号公司网站建设和优化那本书好
  • 北京中国建设银行招聘信息网站工作总结个人
  • 关方网站买微信google广告联盟网站
  • 怎么做网站注册名密码网络营销方案案例范文
  • 网站云解析域名解析电子商务网站系统规划
  • 哈尔滨百度网站建设上杭县建设局网站住房保障
  • v6厂高仿手表网站北沙滩网站建设
  • 5188站长平台如何做一个内部网站