Delphi 中 FireDAC 数据库连接(脱线连接 )

FireDAC的离线模式允许在无持续连接的情况下处理数据,减少资源占用。应用程序需手动调用Offline和Online方法切换。在离线状态下,数据集仍可打开并从本地文件加载。恢复在线模式时,会话状态可能会丢失。确保ResourceOptions.AutoConnect设为True以避免异常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

述了如何使用FireDAC离线模式,它允许你在没有与数据库持久连接的情况下处理数据。

一、概述

FireDAC的离线模式类似于多层客户端,大部分时间客户端与数据库断开连接。只有当客户端需要与数据库交换数据时,连接才是活动的。当一个应用程序在一个不稳定的环境中工作或需要保留DBMS资源时,这很有用。

在离线模式下,与数据库的连接被关闭。然而,数据集被打开。

二、控制脱线
  1. 要使一个连接进入脱机模式,请使用下列选项之一。

  • 调用TFDCustomConnection.Offline方法。

  • 在TFDCustomConnection.OnRecover方法中返回AAction=amOfflineXxxx。

FireDAC不允许你将一个连接自动带入离线模式,因为它不知道下一次应用程序需要联系数据库的时间。因此,这必须由应用程序代码来完成。在连接被设置为离线模式之前,具有尚未被获取的结果集的活动数据集会执行由FetchOptions.AutoFetchAll属性指定的操作。

  1. 要使一个连接进入在线模式,请使用以下选项之一。

  • 明确调用TFDCustomConnection.Online方法。

  1. 隐式激活,当一个连接需要与DBMS对话时,通过执行一个命令或发布更新等。

注意:ResourceOptions.AutoConnect的值必须是True,否则会产生一个异常。

如果一个数据集有指定的ResourceOptions.PersistentFileName属性,那么在Open调用时,数据集不需要连接。它从指定的文件中加载内容。

注意:将连接带入离线模式,然后再带入在线模式,这与恢复断裂的连接类似,因为数据库会话状态会丢失。更多的细节,请阅读恢复连接的文章。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海纳老吴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值