首页 > 开发 > 综合 > 正文

精通数据库系列之入门-技巧篇4

2024-07-21 02:11:29
字体:
来源:转载
供稿:网友

作者:思索 整理:南海

数据库编程示例  

   

  在本次讲座中,我们以delphi5为开发工具,标准的paradox表为后台数据库,来向大家介绍如何进行最简单的数据库编程。在本例中,我们将实现对一个数据表单的添加、修改、删除以及对表中数据进行查询的功能。

  本例所使用的计算机软硬件环境为:windows nt 4.0 server,borland delphi 5,piii550,256m内存。当然啦,一般的朋友在win98的环境下或者win2000的环境下都可以按照本例的步骤来编程序的。笔者的机器主要用作服务器,所以就在服务器上编啦。废话少说,现在开始:

  在正式编写程序之前要有许多准备工作,这当然包括borland delphi 5的安装。delphi5自身带了对标准数据表paradox的驱动(和一些fox系列数据库软件的.db文件是兼容的,这些文件都可以由delphi直接读取)。

  程序编写的第一步首先是数据表(即.db文件)的建立。在这一步要用到delphi自带的一个工具叫database desktop。这个工具主要用来对表格进行操作,它不仅可以操作像.db文件这样的标准表格,还可以访问像oracle、sql server等大型数据库的文件,功能可以说是很强大的。打开database desktop,选择file-new-table,然后选择paradox7,出现如下界面:

    

  在fieldname里面填写你要建立的表单的属性名称,如图所示,本例中要建立的是人员管理表,所以建立的属性为编号、姓名、性别、工作单位、工资、备注等。除工资之外的属性都是字符串类型,即图中type项所选择的a(alpha),而size则是指的字符串的长度,属性值的长度是根据属性的具体意义来确定的,例如“性别”选择只有“男”和“女”,一个汉字的长度,那么性别属性的长度设置成2就可以了(一个汉字等于两个字符的长度)。而工资属性是数值类型的,在paradox中用number来标记,即和前面对应的一个“n”。属性设置完毕后,选择save as存盘。本例中,所建立的数据表格的存放路径和文件名为:d:/program files/borland/database desktop/workdir/ryb.db(人员表)。  

  这样就完成了第一步,这一步只是编程之前的准备工作,也是后面针对这个表单编写数据库应用程序的基础。下面要进行的就是实际的程序编写了,请打开borland delphi 5。  

  在缺省的form1上放置这样一些控件(控件的位置就不用俺再罗嗦了吧?):tdatabase、ttable、tdatasourse、tdbgrid、tlabel、tdbnavigator。按照你喜欢的界面风格来放置这些控件,如下图本例中的控件放置:

    

  下一步就是控件属性的设置啦,这一步也是本例中最关键的一步,因为许多网友对使用前端开发工具对后台数据库进行编程比较生疏,也就是在这个地方。

  我们将tdatabase的databasename属性设置成mydb(这个名字可以随便起),drivername为standard(表明驱动的是paradox表),params属性为path=d:/program files/borland/database desktop/workdir(存放.db文件的路径,前面已经提到),connected设为true(和数据表建立起连接),其他属性使用缺省值就可以了。  

  然后将table的databasename属性设为mydb(即database1的databasename属性),tablename为ryb.db(即数据表的名字)active属性设置为true(打开表单,便于编写程序)。  

  接着将datasourse1的dataset属性设为为table1(ttable的name属性值)。另外dbnavigator1和dbgrid1的datasourse属性都设为datasourse1。tlabel的caption属性设为“数据库编程示例”,如图所示(可以根据个人喜好修改字体,使它变得好看一些)。   >这样控件的属性就设置完毕了,注意到dbgrid里面的“编号”、“姓名”等栏都是数据表中的属性,在ryb.db里面定义,而不是在前端的delphi程序里面定义。点击run按钮之后,这个简单的程序就运行了(见下图)。   >这是通过dbnavigator上的按钮就可以控制对表单进行数据的添加、删除、修改了(将dbnavigator的showhint属性改为true的话可以在运行时看到各个按钮的提示)。 
    
  至此,我们实现了使用delphi这种快速开发工具编写简单的数据库应用程序, 细心的读者可能注意到了,到目前为止连一行程序都没有写,确实是这样,这就是第四代程序设计语言(可视化的编程语言)给我们带来的好处。当然啦,要编写比较复杂的程序不写代码是不可能的,下面我们将在上面的基础上实现查询的功能,并给大家附上源程序。在form增加如下控件:一个tquery、一个tbutton、4个tlabel、2个tedit。并将tlabel的属性进行下图所示的修改(新增加的控件都在黑色方框中):                     

  将query1的databasename属性也设置成mydb(和table一样),sql属性中写入select* from ryb,requestlive设为true(这样可以对query里面的数据进行修改),然后将active属性设为true。最后将datasourse1的dataset属性改为query1(此时table1控件可以从form上去掉了)。  

  双击button1,在程序编辑器里面写入如下代码:  

query1.close;  

    query1.sql.clear;  

    query1.sql.add(select * from ryb);  

    query1.sql.add(where 姓名 like :xm and 工资 > :gz);  

    query1.parambyname(xm).asstring:=%+edit1.text+%;  

if (edit2.text<>’’)then  

    query1.parambyname(gz).value:=strtofloat(edit2.text);  

    query1.prepare;  

    query1.open;   >
  
   这样就完成了查询代码的编写,具体各条语句所引用的函数的含义大家可以参考delphi的帮助文档,在此就不作赘述了。另外在编写查询程序时,涉及到一些关于数据库查询语言sql的知识,在后面的文章中我们将有比较详细的介绍。   >此时再执行这个程序,就编程的具有查询功能的数据库程序。在edit1和edit2中输入相应的查询条件,然后点击button1(确定),程序就执行相应的查询操作,查询到的结果将在dbgrid1中显示。  

  到此为止,我们就实现了使用borland delphi5操纵paradox数据表的程序示例,当然,这个程序是非常简单的,它实现的只是数据库操作的最基本功能。而且这个程序只是在单击环境下运行的,在设计的时候,我们还不需要考虑一些例如并发性的问题。现在比较成熟的是在客户机/服务器结构下和浏览器/服务器下对数据库进行操作,而且随着网络功能的加入,许多新的问题也带入进来,在后面我们将举这方面的例子,请大家静候佳音吧!    
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表