1 / 25

第 13 章 Delphi/SQL Server 开发与编程

第 13 章 Delphi/SQL Server 开发与编程. 13.1 Delphi 数据库应用程序设计. 13.1.1 Delphi 数据库应用程序结构. Delphi 7 数据库应用程序在逻辑上通常由两部分构成:一是数据库访问链路,二是用户界面,如图 13.1 所示。. 1. 用户界面 用户界面使用在窗体上放置数据显示 / 编辑组件的方式来实现,数据显示 / 编辑组件在 Delphi 7 组件面板的 Data Controls 页中。. 13.1.1 Delphi 数据库应用程序结构. 2. 数据源

amery-floyd
Download Presentation

第 13 章 Delphi/SQL Server 开发与编程

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第13章 Delphi/SQL Server开发与编程 13.1 Delphi数据库应用程序设计

  2. 13.1.1 Delphi数据库应用程序结构 Delphi 7数据库应用程序在逻辑上通常由两部分构成:一是数据库访问链路,二是用户界面,如图13.1所示。 1. 用户界面 用户界面使用在窗体上放置数据显示/编辑组件的方式来实现,数据显示/编辑组件在Delphi 7组件面板的Data Controls页中。

  3. 13.1.1 Delphi数据库应用程序结构 2. 数据源 数据源组件是数据显示组件和数据集组件之间的中介,数据集从数据库获得数据后,将其发送到数据源,然后数据源将数据送到界面上的数据显示组件进行显示。 3. 数据集 数据集是数据库应用程序的核心。数据集组件保存了一系列从底层的数据库取出的记录。这些记录的数据可以取自一个数据表、一个数据表的若干个字段、多个数据表的若干字段。 4. 连接部分 不同类型的数据集采用不同的机制连接底层数据库。常见的有BDE和ADO方式。 5. 数据模块 数据模块用于放置数据库组件,相当于一个容器。 通过数据模块组件来组织数据库组件有以下二个主要的优点:一是这些不可视组件不用直接放在窗体上了,简化了窗体的设计。二是可以对数据库相关组件进行统一管理,共享相同的内容。

  4. 13.1.2 ADO组件 ADO组件位于组件面板的ADO页,如图13.2所示。 1. ADOConnection组件 ADOConnection组件的主要作用是建立与数据库的连接。使用ADO访问数据库,必须先与其连接。 ADOConnection组件通过ConnectionString属性的设置和操作建立与数据库的连接。

  5. 13.1.2 ADO组件 (1) 向当前窗体上添加一个ADOConnection组件并选中这个组件,在对象浏览器中双击这个组件的ConnectionString属性,弹出如图13.3所示的对话框;选中Use Connection String,单击 “Build…”按钮。

  6. 13.1.2 ADO组件 (2) 系统将弹出“数据链接属性”对话框,如图13.4所示。对于SQL Server 2000数据库,选择“Microsoft OLE DB Provider for SQL Server”,单击“下一步>>”按钮。

  7. 13.1.2 ADO组件 (3) 在所出现的如图13.5所示的“数据链接属性”对话框的“连接”页上输入数据库服务器名称、输入服务器登录信息、选择数据库名称,然后点击“测试”,若所设置的属性正确,则将出现如图13.6所示的测试连接成功对话框。

  8. 13.1.2 ADO组件 2. ADODataSet组件 ADODataSet组件的主要属性有ConnectionString、Connection、CommandText和CommandType。 (1) ConnectionString属性 ConnectionString属性用来指明数据库连接信息。 (2) Connection属性 Connection属性用来指明ADO组件与数据库联系的方式。 (3) CommandText属性 CommandText属性用于存储SQL语句、数据表名或存储过程名。

  9. 13.1.2 ADO组件 (4) CommandType属性 CommandType属性用于指出CommandText中所存储的命令类型,常用的CommandType属性值的含义列于表中。

  10. 13.1.2 ADO组件 3. ADOTable组件 ADOTable组件主要用来从单个数据表中读取数据,它的主要属性有ConnectionString、Connection和TableName。 4. ADOQuery组件 它的主要属性有ConnectionString、Connection、DataSource、SQL和Parameters。ConnectionString和Connection属性的含义与使用同ADODataSet组件。 5. ADOStoredProc组件 它的主要属性有ConnectionString、Connection、DataSource、ProcedureName和Parameters。DataSource指出数据源名称,ProcedureName是需执行的存储过程名,Parameters存储的是执行存储过程所需的参数。 6. ADOCommand组件 它的主要属性有ConnectionString、Connection、CommandText、CommandType,这些属性的含义和使用方法同ADODataSet组件。

  11. 13.1.3 数据源组件和数据显示/编辑组件 • 数据源组件 • 数据源组件位于组件面板的Data Access页上,如图13.7所示。数据源组件在ADO数据集组件(包括ADODataSet、ADOTable、ADOStoredProc和ADOQuery等)与数据显示/编辑组件之间提供了一个接口,起着两者之间通信的媒介作用。 数据源组件的主要属性是DataSet,用于指出数据集。

  12. 13.1.3 数据源组件和数据显示/编辑组件 2. 数据显示/编辑组件 组件面板的Data Controls页中的组件主要用于显示或编辑数据源提供的数据,如图13.8所示。常用的数据编辑/显示组件是DBGrid、DBNavigator、DBText、DBEdit、DBMemo和DBImage组件等。 1) DBGrid组件 DBGrid组件采用网格的方式显示数据表中指定字段的数据,并能够让用户编辑这些数据。表13.2列出了DBGrid组件的主要属性值及含义。DBGrid组件的事件列于表13.3中。

  13. 13.1.3 数据源组件和数据显示/编辑组件

  14. 13.1.3 数据源组件和数据显示/编辑组件 2) DBNavigator组件 DBNavigator组件主要用来执行在数据集中浏览数据和编辑数据的操作,如记录定位、插入记录、删除记录、保存用户对记录的修改等。DBNavigator的外观见图13.9,各个按钮功能描述见表13.4。

  15. 13.1.3 数据源组件和数据显示/编辑组件 DBNavigator组件的主要属性有: (1) DataSource:通过这个属性使本组件与被其控制的数据集联系起来。 (2) VisibleButtons:nbFirst、nbPrior、nbNext、nbLast、nblnsert、nbDelete、nbEdit、nbPost、nbCancel、nbRefresh这10个子属性分别对应着10个按钮,不同的组合使DBNavigator组件显示出不同的状态。 (3) Hints:程序运行时,鼠标移至DBNavigator某按钮时弹出的提示信息,通过单击Hints属性右边的省略号可以进入提示信息编辑对话框。 (4) ShowHint:为True时,能在运行时刻显示提示信息。 (5) Visible:决定在运行中DBNavigator组件是否可见。 3) DBText组件 DBText组件主要用于显示数据集中的字段类型为文本型的字段值,该组件不能用于编辑数据库中的数据。 DEText的WordWrap属性设置为True时,允许当所显示值的长度超过DBText设计时的长度时折行显示。

  16. 13.1.3 数据源组件和数据显示/编辑组件 4) DBEdit组件 该组件能显示和编辑数据源中记录的字段,可以参照DBText组件来建立DBEdit在数据库应用程序中的应用。 5) DBMemo组件 在DBGrid中不能显示数据类型为Graph和Memo字段中的内容,可以使用DBMemo及DBImage分别显示字段中的内容。 6) DBImage组件 DBImage组件提供了一种显示数据库中的图像字段的方法,例如SQL Server的Image类型字段,即可用该组件显示。表13.5列出了DBImage组件的主要属性和方法。

  17. 13.2 设计数据模块连接数据库 • 创建数据模块 • (1) 启动Delphi 7; • (2) 在主菜单中选择fileNewData Module,将新建数据模块的Name属性置为“DMCP”,如图13.10所示,此时将新建一个空数据模块DMCP,如图13.11所示。

  18. 13.2 设计数据模块连接数据库 2. 向数据模块中添加连接组件 (1) 在“ADO”组件面板上选择“ADOConnection”组件,将其放入DMCP; (2) 将ADOConnection组件的Name属性设置为“ADOCP”,如图13.12所示; (3) 设置ADOCP的ConnectionString属性,选择图13.12中“ConnectionString”属性右边的文本框,点击按钮,将出现图13.13所示的设置连接串对话框;

  19. 13.2 设计数据模块连接数据库 (4) 选择“Use Connection String”,单击“Build…”按钮;在其中选择“Microsoft OLE DB Provider for SQL Server”,单击“下一步”; (5) 在所出现的界面中输入数据库服务器名、选择身份认证方式、选择数据库CPXS,单击“确定”。 (6) 在图13.12所示的界面中将ADOCP组件的LoginPrompt属性设置为False。

  20. 13.2 设计数据模块连接数据库 【例13.1】在Delphi 7中设计程序将XSBOOK数据库中BOOK表的所有记录显示出来。设计步骤如下: (1) 按图13.15所示设计界面:在窗体中放置一个Label组件,其Caption属性为“图书信息”;然后在放置1个ADOConnection、1个DataSource、1个ADOTable和1个DBGrid组件,这4个组件的属性按表13.6设置。

  21. 13.2 设计数据模块连接数据库 (2) 单击运行按钮,运行该程序。 【例13.2】直接在窗体中放置数据访问组件,创建一个简单数据库应用程序。 (1)选择主菜单下的FileNewApplication,创建一个应用程序。 (2)从Data Access页上将一个数据源组件DataSource拖放到主窗体上。数据源组件在组件面板上位置如图13.16所示。 (3)从BDE页上将一个数据表组件Table拖放到主窗体上。数据表组件在组件面板上位置如图13.17所示。

  22. 13.2 设计数据模块连接数据库 (4)从Data Control页上将一个表格显示组件DBGrid和一个数据浏览组件DBNavigator拖放到主窗体上。 (5)按表13.7设置各组件对象的属性。主窗体如图13.19所示。

  23. 13.2 设计数据模块连接数据库 (6)运行程序。现在就可以直接在DBGrid上添加、修改、删除数据。例13.2所创建的就是一个基本数据维护的应用程序,不用书写任何程序代码。

  24. 13.2 设计数据模块连接数据库 【例13.3】使用数据模块,创建与例13.2完成同样功能的应用程序。 (1)选择主菜单下的FileNewApplication,创建一个应用程序。 (2)选择主菜单下的FileNewData Module,创建一个数据模块。 (3)向数据模块中添加一个数据源组件DataSource和一个数据表组件Table,添加了这两个组件后的数据模块如图13.20所示。 (4)向主窗体中添加一个表格显示组件DBGrid和一个数据浏览组件DBNavigator,如图13.21所示。 (5)保存数据模块单元为DMUStu,保存主窗体单元为FormMain。

  25. 13.2 设计数据模块连接数据库 (6)鼠标单击主窗体,选择主菜单下的FileUse Unit命令,选择数据模块对应的单元文件,在本例中对应的单元文件为DMUStu,如图13.22所示 。 (7)按表13.8设置各组件对象的属性。 (8)单击F9按钮运行程序。

More Related