⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 045.htm

📁 delphi教程
💻 HTM
📖 第 1 页 / 共 5 页
字号:
<p> </p><p>  </font><font face="Arial">TDatabase</font><font face="宋体" lang="ZH-CN">的</font><fontface="Arial">Aliases</font><font face="宋体" lang="ZH-CN">描述了数据库表的位置和数据库服务器的联接参数。通常都是在</font><fontface="Arial">Delphi</font><font face="宋体" lang="ZH-CN">之外,运用</font><fontface="Arial">BDE</font><font face="宋体" lang="ZH-CN">配置工具</font><fontface="Arial">(BDECFG32.EXE)</font><font face="宋体" lang="ZH-CN">创建别名,并且别名被存在</font><fontface="Arial">BDE </font><font face="宋体" lang="ZH-CN">配置文件</font><fontface="Arial">IDAPI32.CFG</font><font face="宋体" lang="ZH-CN">中。</p><p>  用户也可以用</font><font face="Arial">TDatabase</font><font face="宋体"lang="ZH-CN">创建只在应用程序中可用的别名,用</font><font face="Arial">TDatabase</font><font face="宋体" lang="ZH-CN">创建的别名不会加进</font><fontface="Arial">BDE</font><font face="宋体" lang="ZH-CN">配置文件中。任何</font><fontface="Arial">DataSet</font><font face="宋体" lang="ZH-CN">部件可通过描述</font><fontface="Arial">DatabaseName </font><font face="宋体" lang="ZH-CN">属性来使用这些别名。为了定制这些局部别名的参数,用鼠标左键双击</font><fontface="Arial">TDatabase</font><font face="宋体" lang="ZH-CN">部件或从</font><fontface="Arial">TDatabase</font><font face="宋体" lang="ZH-CN">部件中选择</font><fontface="Arial">Database Editor</font><font face="宋体" lang="ZH-CN">,</font><fontface="Arial">Delphi</font><font face="宋体" lang="ZH-CN">就会打开数据库属性编辑器</font><fontface="Arial">(Database Properties Editor)</font><font face="宋体" lang="ZH-CN">。</p><p> </font><font face="Arial"></p><p>18.3.1.4 </font><font face="宋体" lang="ZH-CN">控制数据库的联接</p><p> </p><p>  </font><font face="Arial">TDatabase</font><font face="宋体" lang="ZH-CN">部件的</font><fontface="Arial">Connected</font><font face="宋体" lang="ZH-CN">属性,指示</font><fontface="Arial">TDatabase</font><font face="宋体" lang="ZH-CN">部件是否建立与数据库服务器的联接。当应用程序打开数据库中的表时,</font><fontface="Arial">Connected</font><font face="宋体" lang="ZH-CN">被设置为</font><fontface="Arial">True</font><font face="宋体" lang="ZH-CN">。将</font><font face="Arial">Connected</font><font face="宋体" lang="ZH-CN">设为</font><font face="Arial">True</font><fontface="宋体" lang="ZH-CN">就建立了数据库的联接。</p><p>  </font><font face="Arial">1. </font><font face="宋体" lang="ZH-CN">保持数据库联接</p><p>  </font><font face="Arial">TDatabase</font><font face="宋体" lang="ZH-CN">的</font><fontface="Arial">KeepConnection</font><font face="宋体" lang="ZH-CN">属性描述当没有数据库表打开时是否要与保持数据库的联接。</p><p>  如果应用程序需要在单个数据库中多次打开关闭多个表时,将</font><fontface="Arial">KeepConnection </font><font face="宋体" lang="ZH-CN">置为</font><fontface="Arial">True</font><font face="宋体" lang="ZH-CN">能使应用程序具备更好的性能。</p><p>  当</font><font face="Arial">KeepConnection</font><font face="宋体"lang="ZH-CN">为</font><font face="Arial">True</font><font face="宋体" lang="ZH-CN">时,即使没有表打开,应用程序也能保持数据库的联接。那么就能重复打开和关闭数据库表而不需每次进行联接注册。</p><p>  </font><font face="Arial">2. </font><font face="宋体" lang="ZH-CN">使用</font><fontface="Arial">TSesstion</font><font face="宋体" lang="ZH-CN">控制联接</font><fontface="Arial"></p><p></font><font face="宋体" lang="ZH-CN"> </font><font face="Arial">TSesstion</font><fontface="宋体" lang="ZH-CN">部件有一个面向整个应用程序的</font><fontface="Arial">KeepConnections</font><font face="宋体" lang="ZH-CN">属性。如果</font><fontface="Arial">Session.KeepConnections</font><font face="宋体" lang="ZH-CN">为</font><fontface="Arial">True</font><font face="宋体" lang="ZH-CN">,那么用于所有</font><fontface="Arial">TDatabase</font><font face="宋体" lang="ZH-CN">部件的数据库联接都是持久的。</p><p>  </font><font face="Arial">TSession</font><font face="宋体" lang="ZH-CN">为应用程序提供数据库联接的全局控制。</font><fontface="Arial">TSession</font><font face="宋体" lang="ZH-CN">中的</font><fontface="Arial">Databases </font><font face="宋体" lang="ZH-CN">属性是</font><fontface="Arial">Session</font><font face="宋体" lang="ZH-CN">中所有活跃数据库组成的数组,</font><fontface="Arial">DatabasesCount</font><font face="宋体" lang="ZH-CN">属性描述活跃数据库的数目。</p><p>  </font><font face="Arial">3. </font><font face="宋体" lang="ZH-CN">描述</font><fontface="Arial">Net</font><font face="宋体" lang="ZH-CN">和</font><font face="Arial">Private</font><fontface="宋体" lang="ZH-CN">目录</p><p>  </font><font face="Arial">TSession</font><font face="宋体" lang="ZH-CN">的</font><fontface="Arial">NetFileDir</font><font face="宋体" lang="ZH-CN">属性描述</font><fontface="Arial">BDE</font><font face="宋体" lang="ZH-CN">网络控制目录的路径。</font><fontface="Arial">TSession</font><font face="宋体" lang="ZH-CN">的</font><font face="Arial">PrivateDir</font><fontface="宋体" lang="ZH-CN">属性描述存储诸述处理局部</font><font face="Arial">SQL</font><fontface="宋体" lang="ZH-CN">表达式的临时文件的目录的路径。</p><p> </font><font face="Arial"></p><p>18.3.1.5 </font><font face="宋体" lang="ZH-CN">获取数据库信息</p><p> </p><p>  </font><font face="Arial">TSession</font><font face="宋体" lang="ZH-CN">拥有许多让用户获取数据库有关的信息,每个方法都以</font><fontface="Arial">TStringList </font><font face="宋体" lang="ZH-CN">部件作为传入参数,并将信息返回</font><fontface="Arial">TStringList</font><font face="宋体" lang="ZH-CN">中。</p><p>  </font><font face="Arial">1. GetAliasNames</font><font face="宋体" lang="ZH-CN">方法</p><p>  声明:</font><font face="Arial">procedure GetAliasNames(List: TStringList);</font><fontface="宋体" lang="ZH-CN"></p><p>  </font><font face="Arial">GetAliasNames</font><font face="宋体" lang="ZH-CN">方法消除</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">中的参数,并将所有已定义的</font><fontface="Arial">BDE</font><font face="宋体" lang="ZH-CN">别名的名字写入</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">。应用程序生成的别名不包括在内。</p><p>  </font><font face="Arial">2. GetAliasParams</font><font face="宋体"lang="ZH-CN">方法</p><p>  声明:</font><font face="Arial">procedure GetAliasParams(const AliasName:String; List: TStringList);</p><p>GetAliasParams</font><font face="宋体" lang="ZH-CN">方法清除</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">的内容,并将</font><fontface="Arial">BDE</font><font face="宋体" lang="ZH-CN">别名为</font><font face="Arial">AliaName</font><fontface="宋体" lang="ZH-CN">的参数写入</font><font face="Arial">List</font><fontface="宋体" lang="ZH-CN">。</p><p>  </font><font face="Arial">3. GetDatabaseNames</font><font face="宋体"lang="ZH-CN">方法</p><p>  声明:</font><font face="Arial">procedure GetDatabaseNames(List: TStrings);</p><p>GetDatabaseNames</font><font face="宋体" lang="ZH-CN">方法清除</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">的内容并将所有</font><fontface="Arial">BDE</font><font face="宋体" lang="ZH-CN">别名和应用程序定义的别名的名字写入</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">。</font><font face="Arial"></p><p>4. GetDriverNames</font><font face="宋体" lang="ZH-CN">方法</p><p>  声明:</font><font face="Arial">procedure GetDriverNames(List: TStrings);</font><fontface="宋体" lang="ZH-CN"></p><p>  </font><font face="Arial">GetDriverNames</font><font face="宋体" lang="ZH-CN">方法清除</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">中的内容,并将</font><fontface="Arial">BDE</font><font face="宋体" lang="ZH-CN">当前安装的驱动程序名写入</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">。</p><p>  </font><font face="Arial">5. GetDriverParams</font><font face="宋体"lang="ZH-CN">方法</p><p>  声明:</font><font face="Arial">procedure GetDriverParams(const DriverName:String; List: TStrings);</font><font face="宋体" lang="ZH-CN"></p><p>  </font><font face="Arial">GetDriverParams</font><font face="宋体" lang="ZH-CN">方法消除</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">中的内容,并将名为</font><fontface="Arial">DriveName</font><font face="宋体" lang="ZH-CN">驱动程序缺省参数写入</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">。</p><p>  </font><font face="Arial">6. GetTableNames</font><font face="宋体" lang="ZH-CN">方法</p><p>  声明:</font><font face="Arial">procedure GetTableNames(const DatabaseName,Pattern: Strings;</p><p>Extensions, SystemTable: Boolean; List: TStrings);</font><font face="宋体"lang="ZH-CN"></p><p>  </font><font face="Arial">GetTableNames</font><font face="宋体" lang="ZH-CN">方法消除</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">中的内容,并将名为</font><fontface="Arial">DatabaseName</font><font face="宋体" lang="ZH-CN">的数据库中的所有表的名字写入</font><fontface="Arial">List</font><font face="宋体" lang="ZH-CN">。</font><font face="Arial">Pattern</font><fontface="宋体" lang="ZH-CN">参数将限制表名。对于</font><font face="Arial">SQL</font><fontface="宋体" lang="ZH-CN">服务器,将</font><font face="Arial">SystemeTables</font><fontface="宋体" lang="ZH-CN">设为</font><font face="Arial">True</font><font face="宋体"lang="ZH-CN">将获取系统表和用户表。对非</font><font face="Arial">SQL</font><fontface="宋体" lang="ZH-CN">数据库,将</font><font face="Arial">Extensions</font><fontface="宋体" lang="ZH-CN">设为</font><font face="Arial">True</font><font face="宋体"lang="ZH-CN">将在表名中包含扩展名。</p><p> </font><font face="Arial"></p><p>18.3.2 </font><font face="宋体" lang="ZH-CN">处理</font><font face="Arial">Client/Server</font><fontface="宋体" lang="ZH-CN">事务控制</p><p> </p><p>  使用隐式控制和显示控制的数据库应用中有两种方法管理事务控制:</font><fontface="Arial"></p><p></font><font face="宋体" lang="ZH-CN"> ●</font><font face="Arial"> </font><fontface="宋体" lang="ZH-CN">运用</font><font face="Arial">TDatabase</font><fontface="宋体" lang="ZH-CN">部件的属性和方法进行显式控制</p><p> </font><font face="Arial"> </font><font face="宋体" lang="ZH-CN">●</font><fontface="Arial"> </font><font face="宋体" lang="ZH-CN">运用</font><font face="Arial">TQuery</font><fontface="宋体" lang="ZH-CN">部件的传递式</font><font face="Arial">SQL</font><fontface="宋体" lang="ZH-CN">控制事务</p><p> </p><p>  </font><font face="Arial">Delphi</font><font face="宋体" lang="ZH-CN">还支持</font><fontface="Arial">Paradox</font><font face="宋体" lang="ZH-CN">和</font><font face="Arial">dBASE</font><fontface="宋体" lang="ZH-CN">表的局部事务处理</p><p> </font><font face="Arial"></p><p>18.3.2.1 </font><font face="宋体" lang="ZH-CN">事务控制概述</p><p> </p><p>  当用</font><font face="Arial">Delphi</font><font face="宋体" lang="ZH-CN">创建数据库应用时,</font><fontface="Arial">Delphi</font><font face="宋体" lang="ZH-CN">提供了用为所有数据库访问的事务控制。</p><p>  事务是这样一组操作,在被提交前,它们对一个或多个数据库的操作,必须全部执行成功。如果其中一个操作失败,则所有操作失败,即事务具有原子性。</p><p>  即使发生硬件失败,事务也要保证数据库一致性。当允许多用户并发访问时,事务还要维持数据完整性。</p><p>  例如:一个应用程序可能更新</font><font face="Arial">ORDERS</font><fontface="宋体" lang="ZH-CN">表以指明接受购买某一项目的定单,那么也要更新</font><fontface="Arial">INNENTORY</font><font face="宋体" lang="ZH-CN">表以反映库存的减少。如果在第一个更新之后,第二个更新之前发生硬件错误,数据库就会处于不一致状态,因为库存情况没有反映定单情况。在事务控制下,两个表达式将在同一时间提交,如果其中一个表达式失败,则被返转</font><fontface="Arial">(Rolled Back)</font><font face="宋体" lang="ZH-CN">。</p><p> </font><font face="Arial"></p><p>18.3.2.2 </font><font face="宋体" lang="ZH-CN">使用隐式控制</p>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -