BDE 退出历史 迁移至FireDAC
BDE组件套TQuery\TTable\TStoreProce结束历时使命。
ADO组件套也停止更新,
将来是FireDAC组件套的江湖
Migrating BDE Applications to FireDAC
Go Up to Migrating to FireDAC
This article guides you through a series of the steps to migrate the BDE application to the FireDAC.
Topics
| Topic | Description |
|---|---|
| BDE Name Counterparts | Most of the BDE high-level types and components have counterparts in FireDAC. |
| BDE Aliases Migration | FireDAC has the BDE aliases migration function. |
| BDE Application Migration | A step-by-step example showing how to migrate BDE application to FireDAC. |
| Additional Migration Hints | Few additional BDE application migration considerations. |
Introduction
This article provides a tutorial showing how to migrate a simple client-server application using BDE data access components, such as TDatabase, TQuery, TTable, to the FireDAC. It shows the basic principles of replacing the common components, properties and code, preserving the developers working time and avoiding the common migration pitfalls.
Overview
In general, the FireDAC components have a high compatibility level with the BDE data access components. This includes the syntax and semantic of the properties and methods in the FireDAC and BDE. But some parts are different:
- BDE and FireDAC have components with different names (for example, TQuery component in BDE is TFDQuery in FireDAC.)
- BDE and FireDAC have different alias/connection definition systems. BDE stores aliases in the binary system wide file IDAPI.CFG, while FireDAC stores the connection definitions in the FDConnectionDefs.ini file.
- Some parameters for BDE SQLLink and FireDAC drivers are different.
- BDE and FireDAC can have different data type mapping for the same RDBMS. FireDAC follows a mapping style closely similar to the dbExpress data type mapping. However, FireDAC has powerful capabilities to adjust the data type mapping.
- The base APIs (the BDE API and the Phys interface) are absolutely incompatible. If you have some code which directly uses the BDE API, it has to be recoded.
- BDE and FireDAC have different query syntax and capabilities. FireDAC offers the Local SQL feature.
This is nearly all that needs to be changed at the migration from BDE to FireDAC. After the migration (or in parallel with it), you should consider reviewing your application for:
- Using the extended FireDAC functionality to simplify your application.
- Using the extended FireDAC functionality to extend the functionality of your application.
- Using the FireDAC options to fine-tune your application and speed it up.
以前安装控件需要bdertl,xe7里移出
工程里不能包含DBTables文件了
#include <dbtables.hpp>
[ilink32 Error] Fatal: Unable to open file 'BDERTL.LIB'
bdertl.lib 工程文件移出OK
[bcc32 Error] DBTables.hpp(11): E2209 Unable to open include file 'Bde.DBTables.hpp'
find #include <dbtables.hpp> in the project,and remove it.ok!
Berlin 版BDE升级FireDAC的工具
http://community.embarcadero.com/blogs?view=entry&id=8594
需要BDE控件的话,可以安装
1)30522_bde_installer_for_rad_studio_delphi_c_builder_10.1_berlin 2016-04-21
BDEInstall.exe
2)Add Package
IDE/Component/Install Packages/Add、dclbdexxx.bpl
D:\Program Files (x86)\Embarcadero\Studio\19.0\bin
http://support.embarcadero.com/article/44082
tokyo 10.2.2 BDE安装
https://cc.embarcadero.com/item/30752
BDE 退出历史 迁移至FireDAC的更多相关文章
- Android 支持库迁移到AndroidX
一.背景 Android系统版本在不断更新,从最初的Android 1.0到现在Google和各大手机厂商正在推的Android 10,平均下来每个年头都有一个大的版本更新.但用户正在用的手机上的An ...
- HTTP 战役 与 历史
导火线1992年,有一家公司Nombas 开发了一种叫C--的嵌入式脚本语言,后来觉得名字比较晦气,最终改名为scriptEase.而这种可以嵌入网页中的脚本的理念,成为日后移动互联网蓬勃发展的一块重 ...
- 浏览器User-agent String里的历史故事
你是否好奇标识浏览器身份的User-Agent,为什么每个浏览器都有Mozilla字样? Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 ...
- vim显示历史命令
[vim显示历史命令] q: 进入命令历史编辑.类似的还有 q/ 可以进入搜索历史编辑.注意 q 后面如果跟随其它字母,是进入命令记录. 可以像编辑缓冲区一样编辑某个命令,然后回车执行.也可以用 ct ...
- 为什么浏览器User-agent总是有Mozilla字样(User-agent String里的历史故事)【搜藏】
你是否好奇标识浏览器身份的User-Agent,为什么每个浏览器都有Mozilla字样? Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 ...
- 终于了解了User-Agent的历史了
你是否好奇标识浏览器身份的User-Agent,为什么每个浏览器都有Mozilla字样? 1 Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.3 ...
- JVM基础系列第2讲:Java 虚拟机的历史
说起 Java 虚拟机,许多人就会将其与 HotSpot 虚拟机等同看待.但实际上 Java 虚拟机除了 HotSpot 之外,还有 Sun Classic VM.Exact VM.BEA JRock ...
- Core Data 迁移与版本管理
原文 http://chun.tips/blog/2014/11/28/core-data-ban-ben-qian-yi-jing-yan-zong-jie/ 主题 Core DataiOS开发 ...
- Rokid开发者社区skill之【历史上的今天】
技能名称:历史上的今天 入口词:打开历史上的今天 语音交互:(有些是先写上) { "intents": [ { "intent": "PAUSE_HI ...
随机推荐
- L5负载均衡
L5负载均衡组件的功能职责 L5的功能特征如下: 名字服务:以SID(由模块ID和命令字ID组成)为关键字,通过SID取得真正的IP和端口地址,使得IP和端口配置对调用者透明,运维变更配置更方便: 负 ...
- 个人博客:有态度的HBase/Spark/BigData
个人博客:有态度的HBase/Spark/BigData 关于我 本人范欣欣,男,就职于网易杭州研究院后台技术中心数据库技术组,专注于HBase的开发运维,热衷于MySQL等相关数据库技术.联系方式: ...
- Tcp 编程 的时代 已经到来
这是 一个 网友 在 Github 上的 项目 SmartRoute : https://github.com/IKende/SmartRoute ZooKeeper 和 Consul 的 “投票 ...
- JUC集合之 ConcurrentSkipListMap
ConcurrentSkipListMap介绍 ConcurrentSkipListMap是线程安全的有序的哈希表,适用于高并发的场景. ConcurrentSkipListMap和TreeMap,它 ...
- Django Admin 时间格式化
http://961911.blog.51cto.com/951911/1557218 修改settings.py,添加一下内容: USE_L10N = False DATETIME_FORMAT = ...
- HttpPostedFile类
在研究HttpRequest的时候,搞文件上传的时候,经常碰到返回HttpPostedFile对象的情况,这个对象才是真正包含文件内容的东西. 经常要获取的最重要的内容是FileName属性与Sava ...
- Zigbee 的 mesh功能设置
1. 在编译选项中加入ZIGBEEPRO 最大的节点深度为20,网络模式为mesh网络 如果不配置,则为HOME_CONTROLS,支持5级路由深度,每个路由器最多可连接20个节点(最多包括6个路由器 ...
- Jquery获取元素高度
第一步, 获取你要得到高度的那个div的jQuery对象, 获得方法有很多很多种, 具体你可以看一下jQuery API文档里的选择器部分, 在这里我只跟你说一个最直接的方法, 通过id获得: $(& ...
- 关于 android 读取当前手机号码
手机号码不是所有的都能获取.只是有一部分可以拿到.这个是由于移动运营商没有把手机号码的数据写入到sim卡中.SIM卡只有唯一的编号,供网络与设备识别那就是IMSI号码,手机的信号也可以说是通过这个号码 ...
- Python网络爬虫-requests模块
requests模块 requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求.功能强大,用法简洁高效.在爬虫领域中占据着半壁江山的地位. 如何使用reques ...