机械专业外文文献翻译@外文翻译--Visual Studio .NET如何为并发控制生成SQL语句

上传人:外****家 文档编号:16870 上传时间:2016-12-01 格式:DOC 页数:12 大小:69.99KB
返回 下载 相关 举报
机械专业外文文献翻译@外文翻译--Visual Studio .NET如何为并发控制生成SQL语句_第1页
第1页 / 共12页
机械专业外文文献翻译@外文翻译--Visual Studio .NET如何为并发控制生成SQL语句_第2页
第2页 / 共12页
机械专业外文文献翻译@外文翻译--Visual Studio .NET如何为并发控制生成SQL语句_第3页
第3页 / 共12页
点击查看更多>>
资源描述
理学院毕业论文 第 1 页 /共 12 页 英文翻译 何为并发控制生成 句 翻译:翟靖轩 原作者: 002年 2月 摘要 :这篇文章研究 不同的并发控制 方式所 产生的 句,如何对它们进行修改可以提高执行效率,以及如何生成不带并发控制的 句。 目录 引言 阅读此文章时应具备的一些知识 生成的 句在哪里 并发与数据适配器 (优化生成的 句 并发与 象 结论 引言 任何可能同时被多个用户访问或修改数据的应用程序,都需要进行并发控制。否则,一个用户更改记录时可能不经意的覆盖了其他用户 的更改 。设计工具可以生成 “保持所有值 ”方式 的开放式并发 句或生成 “最后的更新生效 ”方式的 句来更新数据。这篇文章将解释: 不同的 句是如何生成的 如何修改自动生成的 句可以 提高执行效率 阅读此文章时应具备的一些知识 理学院毕业论文 第 2 页 /共 12 页 你需要具备以下知识: 基本的 念,包括 数据集 (及数据适配器(。更多信息请参见 据访问介绍( 。 数据并发机制以及会操作 多内容请参见 介绍 的数据并发 (。 自动生成的 句在哪里 自动生成的 句在 象的 性里。在设计阶段配置 象时或使用 象时 多信息,请参见 并发与 象( 。 配置 象 从工具箱的数据选项卡中拖一个 象 从服务器资源管理器拖一个数据表 选中已有的 象,然后单击在属性窗口底部的 “ 配置数据适配器 ” 链接 象 象在运行时刻被创建,更多信息请参阅 并发控制与数据适配器 (使用 “ 数据适配器 配置 向导 ” 配置数据适配器时,你可以选择是否使用开放式并发来生成 句。 一些思考和注意事项 你的数据源必须有一个主键才能以开放式并发方式生成 句 当使用从 “ 服务器资源管理器 ” 拖放一个数据表的方式来创建象时, 象自动生成基于开放式并发的 句。如果你不想使用开放式并发,右击象, 从快捷菜单中选择 “配置数据适配器 ”,然后 在“ 高级 成选项 ” 对话框中清除 “ 使用开放式并发 ” 选项 的选定 。向导则会重新创建不带并发检测的 句。 理学院毕业论文 第 3 页 /共 12 页 当重新配置现有的 ,应注意 “ 高级 成选项”对话框里的选项已经全部恢复默认。例如最初配置 没有 选定“ 使用开放式并发 ”选项 , 但是当 重新配置 “使用 开放式并发 ” 选项却会被选定,即便你根本没有打开过 “ 高级 成选项 ” 对话框 。 如果你在 “数据适配器配置 向导 ” 的“选择查询类型”页面 选择 “ 使用 现 有的存储过程 ” ,则 “使用开放式并发 ”选项将不可用。存储过程仍按其原来的方式执行。如果想使用并发检测的话,必须将其包括到存储过程中、或在你的应用程序中编写 相应的代码 。 当使用开放式并发来创建 令时,不 会 对二进制 数据 列验证 进行 并发 处理 。 这将导致 用这种方法对大 的 二进制记录集执行按位比较算法时 的 效率低 下 。 用向导生成 句 为了理解 何使用开放式并发来生成 句,让我们来看看用 “ 数据适配器 配置 向导 ” 生成的 句。我们将查看同一条语句在选择 “使用 开放式并发 ” 选项和不选择 “使用 开放式并发 ” 选项 时的 不同状态。 你会注意到,选择开放式并发与不选择开放式并发所生成 句的区别只 存 在于 句上。 注: 以下的例子使用 用“ 数据适配器 配置 向导 ” 生成的 句,并 从 例数据库的 中选择了若干列。 使用开放式并发的 句 这个例子使用了 “ 数据适配器 配置 向导 ” 的默认 配置 ,即 选中了“ 使用开放式并发 ”选项 。 注 : 当使用开放式并发时,生成的 参数集里还 存在一个参数副本。第二个参数集(带 存了最初从数据源里读取的值。 检查 句发现,每一个生成的语句都要检测数据库当前的值是否等于最初读取的值(例, 通过数据库中的每个字段与最初读取的值相比较,我们很容易确定是否同时有其他用户修改了某个字段。如果 句不 成立 ,就没有记录会被修改,与此 同时还引发了一个 “ 数据库并发 ” 异常。如果数据源的某个字段 为 理学院毕业论文 第 4 页 /共 12 页 空值( 生成的 句同样验证最初读取的记 录是否 也为 空值。 = S S R S S R S S 不使用开放式并发的 句 这个例子 更改 了 “ 数据适配器 配置 向导 ” 的高级选项,没有选 中“ 使用开放式并发 ”选项 。 以下的语句 表明 :只要数据库中一条记录满足 则所有的字段都会被更新。不管这条记录 现在 是什 么样的值,它都将被设置为通过 句传递到数据源的值。在 这里没有任何关于并发的检测,也无法得知是否同时有其它用户在更改这条记录。 这种方式称为 “最后的更新生效 ”方式。无论以前对这条记录进行过什么样的修改,更新操作都会执行。 优化生成的 句 成 “保持所有值 ”方式 的 句来 实现 开放式并发。虽然 这 可能 没有生成 最 高 效的 句,但是它 的却 生成 了 可以对数据源所有列(包括主键 )进行并发检测的 句。 使用 “保持所有值 ”方式实现开放式并发,当执行效率非常低下时,你可以手工修改生成的 句 以 使它们不检查数据源的所有列。 最常见 理学院毕业论文 第 5 页 /共 12 页 的方式是使用时间戳或版本号字段。如果你的数据源包含一个 每次修改记录时都会更新的 时间戳字段,你只需要 验证 数据源中的时间戳和你程序中的时间戳二者是否匹配,就可以 知道 是否同时有其他用户修改了记录。 下面这条 句 使用 检查时间戳模式。 注: 这个例子假设数据库已经设置了时间戳 字段 ( 并发与 象 当应用程序使用 者 成的 句的 性被自动的 以 开放式并发方式 创建 。如果你不想用开放式并发,则可以通过修改象的 令的 性来实现。更多内容,请参见 性 或 性 。 结论 当使用开放式并发的 “保存所有值 ”方法时, 句 在设计时 由 设计工具自动生成或在运行时由 动生成 。 它把数据库所有字段(包括主键)当前值与初始值进行比较 ,这可能不是一种最高效的方式 。如果你的数据使用版本号或者时间戳方式控制并发 ,则可以通过修改生成的 句来 获取更高效 的执行。 理学院毕业论文 第 6 页 /共 12 页 英文原文 002 QL of to to a (5 re ny to of s QL to or to 理学院毕业论文 第 7 页 /共 12 页 of to QL ou an re in of at at a of a an by a at of at to 理学院毕业论文 第 8 页 /共 12 页 a in QL to be to by If do to se of to an to if se it be if if do If se in a of to is as be or to no be on to to a of a be by o QL us by We at se in of or in 理学院毕业论文 第 9 页 /共 12 页 is by in of se a of of in to in is to By in it is to if a a If is no a is If a in a a = S S R S S R S S 理学院毕业论文 第 10 页 /共 12 页 of se be as as a in No in be to is no to if a is no on be QL to it a on a If to so it to in to is a or If a is 理学院毕业论文 第 11 页 /共 12 页 in s in to if a QL to in ( f of is If do to of s QL by or by of be it a on a If or QL on 理学院毕业论文 第 12 页 /共 12 页
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 外文翻译


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!