摘要:本部分内容为《数据库原理》课程中的一个课堂案例,幻灯片提供的动画演示有助于理解并发控制的本质,本文内容为幻灯片的摘要。 1、下载本文所对应的幻灯片; 2、下载本文对应的VS2005代码。 如果你对自己并发控制的能力很有自信的话,读完“一、问题提出”后直接可以跳转到“四、看来问题真不简单”处阅读。 本文最后给出了部分测试用代码的简单讲解。 一、问题提出 设某银行存款帐户数据如下表: 现在要求编写...
阅读全文
文章分类 - 数据库应用基础
摘要:本部分内容的完整代码可以从这里下载。 2.2 SQL Server 2000+ADO.NET实现并发控制 2.2.1 并发一致性问题 常见并发并发一致性问题包括:丢失的修改、不可重复读、读脏数据、幻影读(幻影读在一些资料中往往与不可重复读归为一类)。 2.2.1.1 丢失修改 下面我们先来看一个例子,说明并发操作带来的数据的不一致性问题。 考虑飞机订票系统中的一个活动序列: 甲售票点(甲事...
阅读全文
摘要:本文实验用代码请从这里下载:KeyAndModifiedFieldInDataAdapter.rar。 先在SQL Server 2000中建立一名为DBApp的数据库,然后用查询分析器执行SQL-GenDB目录下的.sql文件建立Student表。 让DataAdapter实现KeyAndModifiedField更新 使用DataAdapter(这里我用的是SqlDataAdapter,后面所...
阅读全文
摘要:本文实验用代码请从这里下载:UpdateUsingDataAdapter.rar。 先在SQL Server 2000中建立一名为DBApp的数据库,然后用查询分析器执行SQL-GenDB目录下的.sql文件建立Student表。剩下的就不用多说了,Visual FoxPro的程序使用VFP 8.0(可能需要重新设计一下远程视图的连接字符串)。 小心DataAdapter陷阱 1 问题来源 ADO...
阅读全文
摘要:2.4.5 实验 2-5 【用Visual FoxPro验证WHERE短语生成策略】 【步骤1】在SQL Server中建立数据库 1. 从Windows开始菜单中选择 程序 | Microsoft SQL Server | 企业管理器,启动SQL Server 2000的企业管理器。 2. 在企业管理器中新建一个名为"DBApp"的数据库。关闭企业管理器。 3. 从Windows开始菜单中选择 ...
阅读全文
摘要:2.4.4 实验 2-4 【利用悲观缓冲策略实现自动增长型字段】 1. 启动Visual FoxPro 8.0。选择菜单File | Open…,在弹出的对话框中打开SampleCode\Chapter 2\Lab 2-4\ AutoIncField\ AutoIncField.pjx(若出现提示"Project has been movied…..",请按"Yes"按钮以确认路径更改)。 2. ...
阅读全文
摘要:2.4.3 实验 2-3 【乐观缓冲模式下更新图书阅读次数及相关并发冲突】 【步骤1】代码设计 1. 启动Visual FoxPro 8.0,选择菜单File | Open…,在弹出的对话框中打开SampleCode\Chapter 2\Lab 2-3\OptimisticBuffering\OptimisticBuffering.pjx(若出现提示"Project has been movied...
阅读全文
摘要:2.4.2 实验 2-2 【使用Visual FoxPro实现记录锁定与解锁】 【步骤1】代码设计 1. 启动Visual FoxPro 8.0,选择菜单File | Open…,在弹出的对话框中打开SampleCode\Chapter 2\Lab 2-2\Lock\Lock.pjx(若出现提示"Project has been movied…..",请按"Yes"按钮以确认路径更改)。 2. 在...
阅读全文
摘要:2.4 本章实验 2.4.1 实验 2-1 【使用Visual FoxPro独占(共享)访问表】 【步骤1】独占方式访问 1. 将Visual FoxPro 8.0启动两次,这将在Windows下开启两个Visual FoxPro窗口,将其调整到合适的大小与位置(可以参考图 2-8)。 2. 在第一个Visual FoxPro的Command(命令)窗口中输入命令"USE E:\SUTDENT E...
阅读全文
摘要:第1章实验 本章代码下载:DBApp-Lab1.rar 实验 1-1 Visual FoxPro中参照完整性的设置及数据操作顺序 【步骤1】建立索引 1. 启动Visual FoxPro 8.0,在Command(命令)窗口中输入命令"SET EXCLUSIVE ON"并回车,该命令确保以独占方式访问表和数据库。 2. 选择菜单File | Open…,在弹出的对话框中打开SampleCode\...
阅读全文
摘要:本章代码下载:DBApp-Lab2.rar 第2章 并发问题及控制手段 什么是并发问题?假设有这么一家书吧,顾客可以到那里喝茶读书。顾客拿着选好要读的图书到柜台登记,然后找个地方去阅读,临走时将图书归还店家。有一天,一个顾客相中了一本书后正要拿去登记,另一个顾客的手也抓住了这仅有的一本书,并发问题出现了。两个顾客要读同一本书,互不相让,这让店主伤透了脑筋。这个案例仅仅是众多并发问题中的一个微小部分...
阅读全文
摘要:第1章 数据库基础 1.1 一个肤浅的定义 什么是数据库?这是一个很难回答的问题,经典的教科书往往都是从信息、数据说起,直到数据库。这里我想直接给出一个不准确的,肤浅的定义(这也是最早的FoxBASE时代,绝大多数人对数据库的认识): 【定义】:(1)一个库便是一张二维表格,表由表头(字段)与表的内容(记录)组成。(2)建立在该表上的操作主要包括:检索、插入、删除、更新。 这个定义与现有数...
阅读全文
摘要:第0章 序 屈指算来,本人在高校任教已经到了第九个年头,大学所学专业是工业外贸,而任教后教的却是计算机。为了不误人子弟,自己在计算机方面拼命追赶,所幸学生比较捧场,对所教的计算机类课程评价尚好,在这第九个年头上将自己积累的一些数据库经验和技巧记录下来,以备日后查阅。 就象很多普通重点高校一样,我毕业工作后面临的也是师资力量不足,教师队伍匮乏,在这样艰难的情况下,我被迫在九年内开出了十余门计算机...
阅读全文